PHP MySQL Abfrage aus Datenbank
Hallo,
Ich habe in einer Datenbank daten über VM's stehen. Angaben wie hostname,adresse, serverat usw.
Wie kann ich in PHP ne Abfrage der Daten aus der Datenbank so machen, dass der nach und nach alle Daten ausliest.
Ich möchte gerne nach und nach per Script aus der Datenbank rauslesen, welche VM's an sind und die herausfiltern und diese Daten in eine CMD senden.
Wenn ich angeben würde, das die VM xy herausgefiltert werden soll kann ich in die sql Abfrage dies einbauen aber das kann ich in diesem Fall nicht anwenden.
Vielen Dank für Tipps
Ich habe in einer Datenbank daten über VM's stehen. Angaben wie hostname,adresse, serverat usw.
Wie kann ich in PHP ne Abfrage der Daten aus der Datenbank so machen, dass der nach und nach alle Daten ausliest.
Ich möchte gerne nach und nach per Script aus der Datenbank rauslesen, welche VM's an sind und die herausfiltern und diese Daten in eine CMD senden.
Wenn ich angeben würde, das die VM xy herausgefiltert werden soll kann ich in die sql Abfrage dies einbauen aber das kann ich in diesem Fall nicht anwenden.
Vielen Dank für Tipps
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 242502
Url: https://administrator.de/contentid/242502
Ausgedruckt am: 22.11.2024 um 22:11 Uhr
12 Kommentare
Neuester Kommentar
Moin,
hm, ziemlich verworren dein Beitrag... schon mal Google gefragt? Der kennt 1000te seiten, wie z.b. das hier: http://www.homeandlearn.co.uk/php/php13p2.html
lg,
Slainte
hm, ziemlich verworren dein Beitrag... schon mal Google gefragt? Der kennt 1000te seiten, wie z.b. das hier: http://www.homeandlearn.co.uk/php/php13p2.html
lg,
Slainte
Sorry, aber der code ist genauso verwirrt wie dein Beitrag.
Möchtest du evtl. das hier machen:
?
Möchtest du evtl. das hier machen:
$fp = fopen($fname, "w");
for ($i=0;$i<$num;$i++)
{
$hostname = mysql_result($res, $i, "hostname");
$serverart = mysql_result($res, $i, "serverart");
$serveradresse = mysql_result($res, $i, "serveradresse");
$datastore = mysql_result($res, $i, "datastore");
fwrite($fp, "1 $hostname\n");
fwrite($fp, "2 $serverart\n");
fwrite($fp, "3 $serveradresse\n");
fwrite($fp, "4 $datastore\n");
}
fclose($fp);
Also der Code schreibt aus der Schleife
die Variablen
in eine Textdatei
Du musst also schon konkreter werden. Oder du postest, wie schon oben angemerkt, mal den komplette code inkl. dem SQL Statement und den Tabellen Schemas
for ($i=0;$i<$num;$i++)
$hostname = mysql_result($res, $i, "hostname");
$serverart = mysql_result($res, $i, "serverart");
$serveradresse = mysql_result($res, $i, "serveradresse");
$datastore = mysql_result($res, $i, "datastore");
$fp = fopen($fname, "w");
...
fwrite($fp, "1 $hostname\n");
fwrite($fp, "2 $serverart\n");
fwrite($fp, "3 $serveradresse\n");
fwrite($fp, "4 $datastore\n");
...
fclose($fp);
Du musst also schon konkreter werden. Oder du postest, wie schon oben angemerkt, mal den komplette code inkl. dem SQL Statement und den Tabellen Schemas
Moin Lost144,
... das is' ja mal ein witziges Schleifenkonstukt...
Musst du wirklich innerhalb der FETCHerei bei jedem Datensatz die Ausgabedatei test.txt öfnen, einen Satz schreiben und wieder schliessen?
Falls das keine ABM-Massnahme für deinen Prozessor ist und/oder du ihm künftig den gesetzlich empfohlenen Mindestlohn zahlen musst
-> dann würde ich es überdenken.
Ich liebe Freitage
Biber
... das is' ja mal ein witziges Schleifenkonstukt...
Musst du wirklich innerhalb der FETCHerei bei jedem Datensatz die Ausgabedatei test.txt öfnen, einen Satz schreiben und wieder schliessen?
Falls das keine ABM-Massnahme für deinen Prozessor ist und/oder du ihm künftig den gesetzlich empfohlenen Mindestlohn zahlen musst
-> dann würde ich es überdenken.
Ich liebe Freitage
Biber
Aber wenn ich oben im Code den Paramater W verwende
Ja das liegt genau an dem was dir Biber geschrieben hat. Du führst bei jedem Datensatz ein fopen ausAus der PHP Doku zu fopen mit parameter "w"
Nur zum Schreiben geöffnet; platziere Dateizeiger auf Dateianfang und kürze die Datei auf eine Länge von 0. Existiert die Datei nicht, versuche, diese zu erzeugen.
also Code umstellen, fopen einmal am VOR der Schleife, fclose einmal NACH der Schleife und dann gehts.