Textumfang abschneiden

annalena49

Mitglied
Hi,

möchte per Script einen Feldwert reduziert in ein 2. Feld der gleichen Tabelle schreiben.
Das kopieren 1:1 in das 2. Feld ist kein Problem, aber das Reduzieren / Abschneiden der ersten 6 Zeichen klappt nicht.

PHP:
// login //
$sql = mysql_query("UPDATE $table SET artnr SUBSTR(artnr, 5)= artikelnr ");

Ich möchte also den Wert aus dem Feld artikelnr die ersten 6 Zeichen löschen und das neue Ergebnis in artnr eintragen.
Was mache ich falsch?
mfg
Annalena
 
So geht das:
PHP:
// $result ist das Ergebnis, was du bekommen hast von der Datenbank
$array = str_split($result, 6); // Trennt den String in einen Array auf, dessen Werte max. 6 Zeichen lang sind
unset($array[0]); // Löscht die ersten 6 Zeichen
$result = implode('', $array); // Setzt den Array wieder zu einem String zusammen
 
Hi einfach nur crack,

Danke für dein Beispiel, aber noch ne Frage, geht das nicht einfach nur mit "Abscheiden" und wie müsste ich das in phpMyAdmin eingeben wenn ich es ohne Script lösen möchte?
 
Hi,

geht das nicht einfach nur mit "Abscheiden" und wie müsste ich das in phpMyAdmin eingeben wenn ich es ohne Script lösen möchte?

Mir fällt ad hoc keine Möglichkeit ein wie du das per SQL-Syntax lösen könntest.

:confused:

Ist mein Post für Euch nicht sichtbar? Natürlich geht das. Allerdings ist das im Allgemeinen ziemlicher Blödsinn. Wenn Du in irgendeiner Abfrage nur eine Teilzeichenkette eines Feldes brauchst, dann wähle halt genau in dieser Abfrage per SUBSTR() nur die Teilzeichenkette aus...

LG
 
Hi kuddeldaddeldu,

vielen Dank für den Hinweis. Ich hatte 'nur' die falsche Reihenfolge, klappt jetzt sehr gut.

Vielen Dank
Annalena
 
Zurück