etops Geschrieben 12. November 2003 Geschrieben 12. November 2003 Hallo, ich habe eine PHP-Seite, die ganz normal auf eine MySQL-Datenbank zugreift. Zum Beispiel so: $query = "SELECT feld1, feld2 FROM abc. Ich würde nun gerne mit den Feldinhalten von Feld1, Feld2 etc weiterarbeiten bzw. verschiedene Bedingungen abprüfen. Kann mir jemand sagen, wie das geht? Das wäre super Danke im Voraus Gruß -etops- Zitieren
arrayhunter Geschrieben 12. November 2003 Geschrieben 12. November 2003 hi, ist eigentlich ganz easy <?php mysql_connect("hostname", "user", "password"); mysql_select_db($db); $result = mysql_query("select feld1,feld2 from table"); while ($row = mysql_fetch_object($result)) { echo $row->feld1; echo $row->feld2; } mysql_free_result($result); ?> mit $row->dein spaltenname greifst du auf die felder zu, allerdings nur- wenn du mit fetch_object arbeitest. mit fetch_array o. fetch_row sollte es aber ähnlich sein, nur die schreibweise ändert sich Zitieren
robotto7831a Geschrieben 12. November 2003 Geschrieben 12. November 2003 Hallo, schau mal hier. Frank Zitieren
etops Geschrieben 19. November 2003 Autor Geschrieben 19. November 2003 Ok - vielen Dank, jetzt funktioniert zumindest das schon mal. Ich habe nun aber eine weitere Frage: Mittels if-Abfrage möchte ich auf die Attribute einzelner Zeilen zugreifen bzw. diese nur dann anzeigen, wenn eine bestimmte Bedingung erfüllt ist. Das müßte doch irgendwie so gehen: ... if ($zeile["Wert1"] = 0) { nix tun // Frage: Wenn ich will, daß hier nix getan wird, laß ich doch besser diese Abfrage weg, oder?? } elseif ($zeile["Wert1"] <> 0 and <>93 { was anderes tun } ... [/PHP] Aber irgendwas mach ich wohl falsch, denn es geht nicht. Wäre super, wenn jemand wüßte, wo ich festklemme Danke+Gruß etops Zitieren
kills Geschrieben 19. November 2003 Geschrieben 19. November 2003 mach doch einfach so ... if ($zeile["Wert1"] != 0 && $zeile["Wert1"] != 93 { was anderes tun } ... [/PHP] Zitieren
BlackAngel3k Geschrieben 19. November 2003 Geschrieben 19. November 2003 Original geschrieben von etops if ($zeile["Wert1"] = 0) so weist du $zeile["Wert1"] den Wert 0 zu. if ($zeile["Wert"] ==0) so wärs richtig. Zitieren
kills Geschrieben 19. November 2003 Geschrieben 19. November 2003 ... if ($zeile["Wert1"] = 0) { nix tun // Frage: Wenn ich will, daß hier nix getan wird, laß ich doch besser diese Abfrage weg, oder?? } elseif ($zeile["Wert1"] <> 0 and <>93 // so ist es richtig:elseif ($zeile["Wert1"] <> 0 and $zeile["Wert1"]<>93) { was anderes tun } ... [/PHP] Zitieren
etops Geschrieben 20. November 2003 Autor Geschrieben 20. November 2003 Danke, auch das funktioniert nun. Habe aber schon die nächste Frage: if ($zeile["index"] == 1 && ($zeile["Feld1"] == 93 || $zeile["Feld2"] == 93 || $zeile["Feld3"] == 93)) { // ... eine neue Tabellen-Zeile beginnen ... echo "\n<tr>"; // ... Attribute einzeln pro Zeile ausgeben ... echo "\n\t<td>{$i["index"]}</td>"; ... // verschiedene Werte ... // verschiedene Werte echo "\n\t<td>{$i["Feld1"]}</td>"; echo "\n\t<td>{$i["Feld2"]}</td>"; echo "\n\t<td>{$i["Feld3"]}</td>"; ... // verschiedene Werte // Jetzt Zeile beenden echo "\n</tr>"; } [/PHP] Warum bekomme ich die Zeileninhalte nicht angezeigt? Zur Erklärung: ich möchte den Tabellendurchlauf in der Zeile beginnen, bei der das Feld Index auf 1 steht. Angezeigt werden sollen nur diejenigen Tabellenzeilen, bei denen die Bedingung "entweder Feld1 = 93 oder Feld2 = 93 oder Feld3 = 93" erfüllt ist. Wer kann helfen? Danke schon mal, Gruß etops Zitieren
etops Geschrieben 20. November 2003 Autor Geschrieben 20. November 2003 Ich hatte da eben einen Code-Schnipsel vergessen: Unten dran folgt noch else { $zeile["index_flt"] += 1; } [/PHP] Zitieren
kills Geschrieben 20. November 2003 Geschrieben 20. November 2003 mach so: if ($zeile["index"] == 1 && ($zeile["Feld1"] == 93 || $zeile["Feld2"] == 93 || $zeile["Feld3"] == 93)) { // ... eine neue Tabellen-Zeile beginnen ... echo "\n<tr>"; // ... Attribute einzeln pro Zeile ausgeben ... echo "\n\t<td>". $i["index"] ."</td>"; ... // verschiedene Werte ... // verschiedene Werte echo "\n\t<td>". $i["Feld1"] ."</td>"; echo "\n\t<td>". $i["Feld2"] ."</td>"; echo "\n\t<td>". $i["Feld3"] ."</td>"; ... // verschiedene Werte // Jetzt Zeile beenden echo "\n</tr>"; } [/PHP] Zitieren
devniv Geschrieben 20. November 2003 Geschrieben 20. November 2003 ein tipp hätte ich noch: wenn du lieber php von html trennen willst, dann guck dir mal http://smarty.php.net an... wenn du auch noch objekt-orientiert arbeiten willst (was mit php ja auch geht), sowie einfach mit Datenbank-Zugriffen arbeiten willst, dann guck dir http://pear.php.net an... die haben imho ne gute Datenbank-API. Da kannst du dann deine Datenbanken in form von "mysql://user:passwort@server/datenbank" ansprechen und Daten einlesen und so. mit Smarty kannst du dann die Tabellen ausgeben. Gruss DevNiv Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.