mirror of
https://gitlab.com/harald.mueller/aktuelle.kurse.git
synced 2024-10-19 18:05:02 +02:00
248 lines
11 KiB
HTML
248 lines
11 KiB
HTML
|
<html>
|
||
|
<head>
|
||
|
|
||
|
|
||
|
<title>PHP-Einfach.de - MySQL Einführung - Einfache Datenabfrage und Ausgabe</title>
|
||
|
|
||
|
|
||
|
<meta name="Author" content="Andavos">
|
||
|
<meta name="Publisher" content="Andavos">
|
||
|
<meta name="Copyright" content="Andavos">
|
||
|
|
||
|
|
||
|
<link rel="stylesheet" href="css/main.css" tppabs="http://www.php-einfach.de/offline/css/main.css" type="text/css">
|
||
|
</head>
|
||
|
<body text="#000000" bgcolor="#DDDDDD" link="#004A95" alink="#004A95" vlink="#525252">
|
||
|
|
||
|
<table align="center" height="100%" width="100%" cellspacing="0" border="0" cellpadding="0">
|
||
|
<tr>
|
||
|
<td align="center" valign="middle" height="100%" width="100%">
|
||
|
|
||
|
<table height="100" width="750" cellspacing="0" border="0" cellpadding="0">
|
||
|
<tr>
|
||
|
<td height="100" bgcolor="#FFE09F" width="750"><img src="grafiken/banner_top.jpg" tppabs="http://www.php-einfach.de/offline/grafiken/banner_top.jpg" width="750" height="100" border="0" alt="">
|
||
|
<a name="oben"></a></td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
<table height="650" width="750" cellspacing="0" border="0" cellpadding="0">
|
||
|
<tr>
|
||
|
<td valign="top" bgcolor="#FFE09F" width="160">
|
||
|
|
||
|
<table width="160" cellspacing="0" border="0" cellpadding="0">
|
||
|
<tr>
|
||
|
<td height="100" width="5"></td>
|
||
|
<td class="black" height="100" width="150">
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
<br><b><center><img src="grafiken/side_navigation.gif" tppabs="http://www.php-einfach.de/offline/grafiken/side_navigation.gif" width="150" height="25" border="0" alt=""></center></b>
|
||
|
<a target="_blank" class="blue" href="http://www.php-einfach.de/index.php"><b>»</b> Startseite</a><br>
|
||
|
<a target="_blank" class="blue" href="http://www.php-einfach.de/nav_news.php"><b>»</b> Newsübersicht</a><br>
|
||
|
<a target="_blank" class="blue" href="http://www.php-einfach.de/nav_email.php"><b>»</b> Kontakt</a><br>
|
||
|
<a target="_blank" class="blue" href="http://www.php-einfach.de/nav_impressum.php"><b>»</b> Impressum</a><br><br>
|
||
|
|
||
|
|
||
|
<center><img src="grafiken/side_community.gif" tppabs="http://www.php-einfach.de/offline/grafiken/side_community.gif" width="150" height="25" border="0" alt=""></center>
|
||
|
<a target="_blank" class="blue" target="_blank" href="http://forum.php-einfach.de/"><b>»</b> Forum</a><br>
|
||
|
<a target="_blank" class="blue" href="http://www.php-einfach.de/nav_gaestebuch.php"><b>»</b> Gästebuch</a><br><br>
|
||
|
|
||
|
|
||
|
<center><img src="grafiken/side_tutorials.gif" tppabs="http://www.php-einfach.de/offline/grafiken/side_tutorials.gif" width="150" height="25" border="0" alt=""></center>
|
||
|
<a class="blue" href="einf_php.php.htm" tppabs="http://www.php-einfach.de/offline/einf_php.php"><b>»</b> Einführung PHP</a><br>
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
<a class="blue" href="einf_mysql.php.htm" tppabs="http://www.php-einfach.de/offline/einf_mysql.php"><b>»</b> Einführung MySQL</a><br>
|
||
|
|
||
|
<a class="blue" href="einf_mysql_anfang.php.htm" tppabs="http://www.php-einfach.de/offline/einf_mysql_anfang.php"><b>»</b> Anfang</a><br>
|
||
|
<div style="position: relative; left:15;" ><a class="blue" href="einf_mysql_tabellen_spalten.php.htm" tppabs="http://www.php-einfach.de/offline/einf_mysql_tabellen_spalten.php"><b>»</b> Tabellen & Spalten</a><br></div>
|
||
|
<a class="blue" href="einf_mysql_tabellen_fuellen.php.htm" tppabs="http://www.php-einfach.de/offline/einf_mysql_tabellen_fuellen.php"><b>»</b> Tabellen füllen</a><br>
|
||
|
<a class="blue" href="einf_mysql_verbindung_aufbauen.php.htm" tppabs="http://www.php-einfach.de/offline/einf_mysql_verbindung_aufbauen.php"><b>»</b> Verbin. aufbauen</a> <br>
|
||
|
<a class="blue" href="einf_mysql_einfache_abfrage.php.htm" tppabs="http://www.php-einfach.de/offline/einf_mysql_einfache_abfrage.php"><b>»</b> Daten ausgeben</a><br>
|
||
|
<a class="blue" href="einf_mysql_weitere_abfragen.php.htm" tppabs="http://www.php-einfach.de/offline/einf_mysql_weitere_abfragen.php"><b>»</b> Weitere Abfragen</a><br>
|
||
|
<a class="blue" href="einf_mysql_daten_schreiben.php.htm" tppabs="http://www.php-einfach.de/offline/einf_mysql_daten_schreiben.php"><b>»</b> Daten hinzufügen</a><br>
|
||
|
<a class="blue" href="einf_mysql_daten_aendern.php.htm" tppabs="http://www.php-einfach.de/offline/einf_mysql_daten_aendern.php"><b>»</b> Daten ändern</a><br>
|
||
|
<a class="blue" href="einf_mysql_daten_loeschen.php.htm" tppabs="http://www.php-einfach.de/offline/einf_mysql_daten_loeschen.php"><b>»</b> Daten löschen</a><br>
|
||
|
<a class="blue" href="einf_mysql_anzahl_zeilen.php.htm" tppabs="http://www.php-einfach.de/offline/einf_mysql_anzahl_zeilen.php"><b>»</b> Anzahl d. Zeilen</a><br>
|
||
|
<a class="blue" href="einf_mysql_verbindung_beenden.php.htm" tppabs="http://www.php-einfach.de/offline/einf_mysql_verbindung_beenden.php"><b>»</b> Verbin. beenden</a><br>
|
||
|
<a class="blue" href="einf_mysql_error_handling.php.htm" tppabs="http://www.php-einfach.de/offline/einf_mysql_error_handling.php"><b>»</b> MySQL-Fehler</a><br>
|
||
|
|
||
|
<br>
|
||
|
<br>
|
||
|
<center>
|
||
|
<a target="_blank" href="http://www.php-einfach.de/nav_verlinkung.php"><img src="grafiken/php-einfach.gif" tppabs="http://www.php-einfach.de/offline/grafiken/php-einfach.gif" width="88" height="31" border="0" alt="PHP-Einfach.de"></a><br><br>
|
||
|
|
||
|
<a target="_blank" href="http://www.digicount.de/"><b>Counterdienst:</b></a>
|
||
|
<a target="_blank" href="http://www.php-einfach.de/nav_digicount.php"><div>
|
||
|
<img src="grafiken/digicount_livedemo.jpg" tppabs="http://www.php-einfach.de/offline/grafiken/digicount_livedemo.jpg" border="0" alt="Digicount.de"><br>
|
||
|
<small>Unser werbefreier Counter- und Statistikdienst</small></div>
|
||
|
|
||
|
</a>
|
||
|
</center>
|
||
|
|
||
|
|
||
|
|
||
|
</td>
|
||
|
<td height="100" width="5"></td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
</td>
|
||
|
<td valign="top" bgcolor="#FFFFFF" width="430">
|
||
|
|
||
|
<table width="430" cellspacing="0" border="0" cellpadding="0">
|
||
|
<tr>
|
||
|
<td height="100" width="10"></td>
|
||
|
<td valign="top" class="black" height="100" width="410">
|
||
|
<br>
|
||
|
<h4>Einfache Datenabfrage und Ausgabe</h4>
|
||
|
|
||
|
Nach dem letzten Kapitel habt ihr immerhin schon einige Daten in eurer Tabelle. Doch wie bekommt
|
||
|
man sie wieder raus? Zuerst einmal muss man wieder den obligatorischen Schritt mit dem
|
||
|
Verbindungsaufbau machen. <br> <br>
|
||
|
|
||
|
|
||
|
<h4>Einfache Abfrage</h4>
|
||
|
Eine einfache Abfrage ist gar nicht so kompliziert, hier ist erst mal die allgemeine Form:
|
||
|
|
||
|
<font color="#606060">
|
||
|
<pre>
|
||
|
<?php
|
||
|
$abfrage = "SELECT Spaltenname FROM Tabellenname";
|
||
|
$ergebnis = mysql_query($abfrage);
|
||
|
while($row = mysql_fetch_object($ergebnis))
|
||
|
{
|
||
|
echo "$row->Spaltenname";
|
||
|
}
|
||
|
?>
|
||
|
</pre>
|
||
|
</font>
|
||
|
|
||
|
|
||
|
Auf unser Beispiel mit der Linkliste würde bezogen, würde es z.B. so aussehen:
|
||
|
<font color="#606060">
|
||
|
<pre>
|
||
|
<?php
|
||
|
$abfrage = "SELECT url FROM links";
|
||
|
$ergebnis = mysql_query($abfrage);
|
||
|
while($row = mysql_fetch_object($ergebnis))
|
||
|
{
|
||
|
echo "$row->url <br>";
|
||
|
}
|
||
|
?>
|
||
|
</pre>
|
||
|
</font>
|
||
|
|
||
|
|
||
|
Zuerst wird die Anfrage gesendet, dies geht wieder per <b>mysql_query()</b>. Danach folgt eine while-Schleife, die ausdrückt: "Führe
|
||
|
die Anweisung solange aus, bis in das Array $row keine Werte mehr geschrieben werden.
|
||
|
". Dazu benutzen wir den Befehl <b>mysql_fetch_object()</b> <br><br>
|
||
|
|
||
|
Um nun einzelne Spalten anzusprechen muss man als Anweisung <br>
|
||
|
<b>echo "$row->spaltenname"; </b><br>
|
||
|
benutzen, wobei man natürlich die Werte nicht nur ausgeben muss, sondern sie auch z.B. überprüfen lassen kann.<br>
|
||
|
Diese Ausgabe funktioniert aber nur innerhalb der while-Schleife, außerhalb nicht.<br>
|
||
|
Innerhalb der while-Schleife könnt ihr ganz normale PHP-Befehle benutzen und sogar weitere Tabellen abfragen.<br><br>
|
||
|
|
||
|
Natürlich möchte man nicht nur eine Spalte einer Tabelle ausgeben. Um mehrere auszugeben muss man die Abfrage etwas anpassen:
|
||
|
|
||
|
<font color="#606060">
|
||
|
<pre>
|
||
|
<?php
|
||
|
$abfrage = "SELECT id, url, urlname FROM links";
|
||
|
$ergebnis = mysql_query($abfrage);
|
||
|
while($row = mysql_fetch_object($ergebnis))
|
||
|
{
|
||
|
echo "$row->id, $row->url, $row->urlname <br>";
|
||
|
|
||
|
}
|
||
|
?>
|
||
|
</pre>
|
||
|
</font>
|
||
|
|
||
|
Dabei werden alle Spaltennamen mit einem Komma von einander getrennt.<br><br>
|
||
|
|
||
|
Möchte man alle Spalten abfragen, kann man auch anstatt die Spaltennamen zu schreiben, ein * benutzen.
|
||
|
|
||
|
<font color="#606060">
|
||
|
<pre>
|
||
|
<?php
|
||
|
$abfrage = "SELECT * FROM links";
|
||
|
$ergebnis = mysql_query($abfrage);
|
||
|
while($row = mysql_fetch_object($ergebnis))
|
||
|
{
|
||
|
echo "$row->name, $row->url, $row->urlname <br>";
|
||
|
|
||
|
}
|
||
|
?>
|
||
|
</pre>
|
||
|
</font>
|
||
|
|
||
|
<b>Achtung:</b> Man kann zwar das Sternchen (*) benutzen, allerdings ist die Ausgabe dann etwas langsamer, denn MySQL muss alle Spalten abfragen und zwischenspeichern, obwohl evt. nur 2 oder 3 Spalten benötigt werden. Auf Rechnern mit wenig Arbeitsspeicher kann so das Script schon merklich langsamer werden. Deswegen sollte man die verschiedenen Spaltennamen mit einem Komma voneinander trennen.<br>
|
||
|
Auch wenn man alle Spalten benötigt, sollte man die Spalten einzeln aufführen, denn so muss der Server die Reihenfolge nicht immer wieder neu berechnen.<br>
|
||
|
<b>Allerdings</b> sollte man darauf nur achten, wenn man viele (8 und mehr) Abfragen pro Seite hat, und dieses Script viele Personen (30 und mehr) auf einmal benutzen, oder wenn man einen langsamen Server hat. Ist dies nicht der Fall, dann kann man ruhig Sternchen benutzen, denn den der zeitliche Unterschied ist kaum messbar.<br><br>
|
||
|
|
||
|
In Beispielen findet man zwar meistens ein Sternchen, denn so muss der Autor nicht darauf achten, dass der Leser die Datenbank richtig abfragt.<br><br>
|
||
|
|
||
|
Es gibt aber noch viele <a href="einf_mysql_weitere_abfragen.php.htm" tppabs="http://www.php-einfach.de/offline/einf_mysql_weitere_abfragen.php">weitere Abfragen</a>.<br><br>
|
||
|
|
||
|
<a href="http://www.php-einfach.de/nav_impressum.php">Autor Andavos & Urza</a>
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
<div align="center"><a href="#oben">Nach oben</a></div>
|
||
|
</td>
|
||
|
<td height="100" width="10"></td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
</td>
|
||
|
<td valign="top" bgcolor="#FFE09F" width="160">
|
||
|
|
||
|
<table width="160" cellspacing="0" border="0" cellpadding="0">
|
||
|
<tr>
|
||
|
<td height="100" width="5"></td>
|
||
|
<td valign="top" class="black2" height="100" width="150">
|
||
|
|
||
|
<br><b><center><img src="grafiken/side_news.gif" tppabs="http://www.php-einfach.de/offline/grafiken/side_news.gif" width="150" height="25" border="0" alt=""></center></b>
|
||
|
|
||
|
|
||
|
<a target="_blank" href="http://www.php-einfach.de/nav_news.php">News</a>
|
||
|
<br><br>
|
||
|
|
||
|
<b><center><img src="grafiken/side_forum.gif" tppabs="http://www.php-einfach.de/offline/grafiken/side_forum.gif" width="150" height="25" border="0" alt=""></center></b>
|
||
|
<a target="_blank" href="http://forum.php-einfach.de/">Forum</a>
|
||
|
<br><br>
|
||
|
|
||
|
<b><center><img src="grafiken/side_newsletter.gif" tppabs="http://www.php-einfach.de/offline/grafiken/side_newsletter.gif" width="150" height="25" border="0" alt="Newsletter"></center></b>
|
||
|
|
||
|
<form target="_blank" method="post" action="http://www.php-einfach.de/clanletter/save.php">
|
||
|
|
||
|
|
||
|
<br> <br>
|
||
|
<div align="center">© PHP-Einfach.de 2003 - 2007 </div>
|
||
|
</td>
|
||
|
<td height="100" width="5"></td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
|
||
|
</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
|
||
|
</body>
|
||
|
</html>
|