SimpleXML
Achim
- php
0 Mathias Brodala0 Achim0 Mathias Brodala0 Achim
Tach,
Problem: Abfrage mit simplexml in Schleife:
foreach ($xml->daten as $daten) {
if ($daten->wert1 == 2 || $daten->wert1 == 3 || $daten->wert1 == 4){
echo $daten->wert2;
}
}
Die If-Bedingung $daten->wert1 == 2 ist dynamisch und wechselt bei jeder Anfrage je nach übergebenen Variablen. Wie ich die If-Anweisung dynamisieren?
Gruß
Achim
Hallo Achim.
Problem: Abfrage mit simplexml in Schleife:
foreach ($xml->daten as $daten) {
if ($daten->wert1 == 2 || $daten->wert1 == 3 || $daten->wert1 == 4){
echo $daten->wert2;
}
}Die If-Bedingung $daten->wert1 == 2 ist dynamisch und wechselt bei jeder Anfrage je nach übergebenen Variablen.
Inwiefern wechselt sie? Zu was? Wie sieht $xml aus? (print_r())
Einen schönen Mittwoch noch.
Gruß, Mathias
Hallo Achim.
Problem: Abfrage mit simplexml in Schleife:
foreach ($xml->daten as $daten) {
if ($daten->wert1 == 2 || $daten->wert1 == 3 || $daten->wert1 == 4){
echo $daten->wert2;
}
}Die If-Bedingung $daten->wert1 == 2 ist dynamisch und wechselt bei jeder Anfrage je nach übergebenen Variablen.
Inwiefern wechselt sie? Zu was? Wie sieht $xml aus? (print_r())
Die Werte der if-Bedingung (im Beispiel 1,2,3) wechseln und werden an die Seite via post übergeben. ($_POST["qstring"] ist z.B. '2,3,4').
Beim nächsten Aufruf wäre es z.B. 3,5 und die if-Anweisung müßte so aussehen:
if ($daten->wert1 == 3 || $daten->wert1 == 5)
Ich möchte nun die if-Anweisung in der Schleife dynamisch machen:
probier gerade rum:
$postvar = $_POST["qstring"]; //liefert 2,3,4
$array = explode(",", $postvar);
$ifstring = "";
foreach ($array as $id) {
if ($id!= ""){
$ifstring =$ifstring."|| $poi->symid == ".$poiid;
}
Aber das geht ja nicht weil $poi->symid erst in der Schleife geschrieben wird...??
Achim
Hallo Achim.
Problem: Abfrage mit simplexml in Schleife:
foreach ($xml->daten as $daten) {
if ($daten->wert1 == 2 || $daten->wert1 == 3 || $daten->wert1 == 4){
echo $daten->wert2;
}
}Die If-Bedingung $daten->wert1 == 2 ist dynamisch und wechselt bei jeder Anfrage je nach übergebenen Variablen.
Inwiefern wechselt sie? Zu was? Wie sieht $xml aus? (print_r())
Die Werte der if-Bedingung (im Beispiel 1,2,3) wechseln und werden an die Seite via post übergeben. ($_POST["qstring"] ist z.B. '2,3,4').
Beim nächsten Aufruf wäre es z.B. 3,5 und die if-Anweisung müßte so aussehen:
if ($daten->wert1 == 3 || $daten->wert1 == 5)
Ich möchte nun die if-Anweisung in der Schleife dynamisch machen:
probier gerade rum:
Dein Ansatz ist schon einmal nicht schlecht. Hier einmal weiter ausgearbeitet:
if (isset($_POST['qstring'])) {
$arr_query = explode(',', $_POST['qstring']);
foreach ($xml->daten as $daten) {
if ([link:http://de.php.net/manual/function.in-array.php@title=in_array]($daten->wert1, $arr_query)) {
echo $daten->wert2;
}
}
}
$postvar = $_POST["qstring"]; //liefert 2,3,4
$array = explode(",", $postvar);
$ifstring = "";
foreach ($array as $id) {
if ($id!= ""){
$ifstring =$ifstring."|| $poi->symid == ".$poiid;
}Aber das geht ja nicht weil $poi->symid erst in der Schleife geschrieben wird...??
Was auch immer du damit meinst …
Einen schönen Mittwoch noch.
Gruß, Mathias
Super, danke genau das hab ich gesucht !!!
Jetzt Feierabend!