Zeichenkette am Komma teilen ?
Andreas B.
- php
0 MakkuZ0 Viennamade0 Andreas B.0 Badboy460 Andreas B.0 Badboy460 Badboy460 Andreas B.0 Badboy46
0 Andreas Görtz
Hallo,
wohl eine der leichtesten Aufgaben doch ich finde die Lösung nicht. auch die Suchfunktion konnte mir nicht weiterhelfen.
Ich lese die DB aus und habe nun in einem Array folgendes stehen: text1,text2,text3 nun möchte ich text1 text2 text3 trennen und mit den einzelnen Werten weiterarbeiten.
Soweit bin ich schon:
$sql = "select * from texte";
$result = mysql_query($sql);
$zeile = mysql_fetch_array($result);
mit: echo "$zeile[textspalte]"; kann ich nun die Werte mit Komme sehen. Wie trenne ich nun diese und kann Sie mir einzeln ausgeben lassen?
Mfg. Andreas
wenn ich mich recht erinnere kannst du das mit der funktion "explode! such einfach danach in der php dokumentation. (www.selfphp.net)
greetz
MakkuZ
Hallo!
mit: echo "$zeile[textspalte]"; kann ich nun die Werte mit Komme sehen. Wie trenne ich nun diese und kann Sie mir einzeln ausgeben lassen?
Schau mal im manual unter explode und implode nach.
Beste Grüße
Viennamade
Hallo,
Schau mal im manual unter explode und implode nach.
wenn ich nun explode benutze steht in der Ausgabe Array und kein Wert? Diesen Problem habe ich schon öfters gehabt nur weiß ich nicht wieso das so war?
$zeile = mysql_fetch_array($result);
$zeile = explode (",", $zeile);
echo "$zeile[0]";
Andreas
Hallo,
wenn ich nun explode benutze steht in der Ausgabe Array und kein Wert? Diesen Problem habe ich schon öfters gehabt nur weiß ich nicht wieso das so war?
weil es jetzt ein Array vielleicht ist? ;-)
ein Array kann man gut mit http://de3.php.net/foreach ausgeben
Hallo,
also bei mir steht dann immernoch Array anstatt der Werte, naja wirklich geholfen hat mir das alles nix.
Andreas
weil es jetzt ein Array vielleicht ist? ;-)
ein Array kann man gut mit http://de3.php.net/foreach ausgeben
Hallo,
also bei mir steht dann immernoch Array anstatt der Werte, naja wirklich geholfen hat mir das alles nix.
foreach ($array as $value){
print $value.'<br />';
}
dann wird bei dir immer array ausgegeben?
bei $array muss dein array rein
Hallo,
wie sieht es denn damit aus?
ungetestet....
$sql = "select * from texte";
$result = mysql_query($sql);
$zeile = mysql_fetch_array($result);
$neuezeile = explode (',', $zeile['textspalte']);
foreach ($neuezeile as $value){
print $value.'<br />';
}
Hallo,
ja genau so steht Array bei der Ausgabe drin!
$sql = "select * from zeile";
$result = mysql_query($sql);
$zeile = mysql_fetch_array($result);
$zeile = explode (",", $zeile);
foreach ($zeile as $value){
print $value.'<br />';
}
Ausgabe = Array
Da ich mir jdem Wert arbeiten will wollte ich mir das so ausgeben lassen echo $zeile[0];
Andreas
foreach ($array as $value){
print $value.'<br />';
}
Hallo,
diese Zeile "$zeile = explode (",", $zeile);" ist auch falsch
du musst einen String übergeben und kein Array
also "$zeile = explode (",", $zeile['textspalte'])"
ok danke,
jetzt bekomme ich es wenigstens schonmal ausgegeben, jetzt muß ich nur noch herausfinden wir ich geziehlt auf die Werte zugreifen kann.
Andreas
Hallo,
diese Zeile "$zeile = explode (",", $zeile);" ist auch falsch
du musst einen String übergeben und kein Array
also "$zeile = explode (",", $zeile['textspalte'])"
Hallo,
$sql = "select * from texte";
$result = mysql_query($sql);
$zeile = mysql_fetch_array($result);
$neuezeile = explode (',', $zeile['textspalte']);
foreach ($neuezeile as $key => $value){
print $key.' ==> '.$value.'<br />';
}
;-)
steht aber auch auf http://de3.php.net/foreach
ok ich gebe es hier auf es wird ja schon wieder alles angezeigt.
Anscheinend bringt mich foreach auf den falschen weg. Was will ich denn mit dem kompltten Inhalt wenn ich nur einen bestimmten Wert benötige.
Aber trotzdem danke für die Hilfe!
Andreas
Hallo,
ok ich gebe es hier auf es wird ja schon wieder alles angezeigt.
Anscheinend bringt mich foreach auf den falschen weg. Was will ich denn mit dem kompltten Inhalt wenn ich nur einen bestimmten Wert benötige.
du musst schon sagen, was du haben möchtest
ich bin davon ausgegangen, dass du dir die einzelnen Werte anzeigen lassen möchtest
Ja da haben wir uns sicher etwas mißverstanden, ich wollte die einzelnen Werte haben die nach dem teilen enstanden sind. Zum Bespiel habe ich nun aeine Ausgabe von text1 text2 text3 die in der DB als text1,text2,text3 stehen. Nun möchte ich aber z.B. text3 haben und damit arbeiten. Bisher bekomme ich ja alle angezeigt was mir ersteinmal geholfen hat aber nun gehts ja weiter.
Ich versuche die irgendwie in ein Array zu holen un dann mit $zeile[2] mir ausgeben zu lassen. wobei in $zeile[2] text3 stehen muß.
Ich hoffe diese Erklärung ist etwas verständlicher.
Andreas
du musst schon sagen, was du haben möchtest
ich bin davon ausgegangen, dass du dir die einzelnen Werte anzeigen lassen möchtest
Ja da haben wir uns sicher etwas mißverstanden, ich wollte die einzelnen Werte haben die nach dem teilen enstanden sind. Zum Bespiel habe ich nun aeine Ausgabe von text1 text2 text3 die in der DB als text1,text2,text3 stehen. Nun möchte ich aber z.B. text3 haben und damit arbeiten. Bisher bekomme ich ja alle angezeigt was mir ersteinmal geholfen hat aber nun gehts ja weiter.
Ich versuche die irgendwie in ein Array zu holen un dann mit $zeile[2] mir ausgeben zu lassen. wobei in $zeile[2] text3 stehen muß.
Ich hoffe diese Erklärung ist etwas verständlicher.
weisst du denn vorher, dass text3 drin vorkommt?
wenn ja, schau dir mal http://de3.php.net/array_search an
damit kannst du dir den key ausgeben lassen
alles klar, habe es hinbekommen so wie ich es wollte:
$result = mysql_query($sql);
$zeile = mysql_fetch_array($result);
$zeile = explode (',', $zeile[0]);
echo "$zeile[2]";
Es lag auch hier an der Fehlerhaften explode Zeile.
Also nochmal Danke!
Andreas
Hi,
wenn ich nun explode benutze steht in der Ausgabe Array und kein Wert? Diesen Problem habe ich schon öfters gehabt nur weiß ich nicht wieso das so war?
$zeile = mysql_fetch_array($result);
$zeile ist jetzt ein Array (siehe Rückgabewert von mysql_fetch_array() unter http://de.php.net/manual/de/function.mysql-fetch-array.php). Mit dem Aufruf
$zeile = explode (",", $zeile);
^ Array
übergibst du der Funktion explode() als zweiten Parameter also das Array $zeile, explode() erwartet jedoch einen String, siehe http://de.php.net/manual/de/function.explode.php. In deinem ersten Posting steht:
mit: echo "$zeile[textspalte]"; kann ich nun die Werte mit Komme sehen.
also steht der String, den du zerteilen möchtest, in $zeile['textspalte'] nicht in $zeile.
Gruß,
Andreas.