• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

tabellenfeld auslesen

Status
Für weitere Antworten geschlossen.

XraYSoLo

Senior HTML'ler
servus, frohe weihnachten,

seit langem bin ich mal wieder hier und gleich wieder mit einer für mich unlösbaren frage. ich hab' folgendes script geschrieben:

[php:1:bdc249f9f6]
<?php
$host = "localhost";
$user = "root";
$pass = "";
$db = "test";
$conn = @mysql_connect("$host", "$user", "$pass") OR die("Process was killed");
@mysql_select_db($db, $conn)
$sql = 'SELECT `Code` FROM `sites` WHERE `ID`=1'; //das hier gefällt dem server nicht
$result = mysql_db_query($conn, $sql);
while ($row = mysql_fetch_row($result)) {
echo $row;
}
?>
[/php:1:bdc249f9f6]

das soll mir aus einer datenbank "test" die tabelle "sites" 'raussuchen, die felder "code" ansteuern und mir das feld mit der ID "1" (per auto_increment festgelegt) auf die seite holen.
wenn ich das jetzt unter xampp ausführe kommt es zu folgener fehlermeldung:

Parse error: parse error, unexpected T_VARIABLE in E:\Programme\xampp\htdocs\testsql.php on line 8

was mache ich da falsch?

Nils aka XraYSoLo
 
Werbung:
Werbung:
ok, gut, thx. jetzt ist es line 10...

sollte ich das vielleicht mal mit fetch_object versuchen?

Nils aka XraYSoLo
 
Versuch mal folgendes:

Ersetzte:
mysql_db_query mit mysql_query // Dabei brauchst du die conn nicht zwingend angeben.
mysql_fetch_row mit mysql_fetch_array // Dadurch erhälst du die daten alle array dessen index aus den feldnamen bestehen. natürlich solltest du dann lieber var_dump zum ausgeben nutzten :)

EDIT:

php?> <--- Es ist unüblich noch ein php vor den script ende tag zu setzten nimm es mal zur sicherheit raus.
 
Prophet schrieb:
Versuch mal folgendes:

Ersetzte:
mysql_db_query mit mysql_query // Dabei brauchst du die conn nicht zwingend angeben.
mysql_fetch_row mit mysql_fetch_array // Dadurch erhälst du die daten alle array dessen index aus den feldnamen bestehen. natürlich solltest du dann lieber var_dump zum ausgeben nutzten :)

EDIT:

php?> <--- Es ist unüblich noch ein php vor den script ende tag zu setzten nimm es mal zur sicherheit raus.

db_query muss sein, denn ich hab 8 DBs.
das php am schluss wurde hier vom bbcode gemacht.
wie muss ich dann mit fetch_array verfahren?

Nils aka XraYSoLo
 
Werbung:
Hallo,

[php:1:e8f8408b22]while($row = mysql_fetch_array($result))
{
echo $row["Code"];
}[/php:1:e8f8408b22]


Liebe Grüße,
L.T.M
 
Werbung:
dann guckst du halt bei php.net:

php.net schrieb:
mysql_fetch_array

(PHP 3, PHP 4, PHP 5)
mysql_fetch_array -- Liefert einen Datensatz als assoziatives Array, als numerisches Array oder beides
Beschreibung
array mysql_fetch_array ( resource Ergebnis-Kennung [, int Ergebnistyp] )

Liefert ein Array das dem aktuellen Datensatz entspricht oder FALSE, wenn keine weiteren Datensätze vorliegen.

mysql_fetch_array() ist eine erweiterte Version von mysql_fetch_row(). Die Daten werden sowohl unter numerischen Indizes des Ergebnis-Arrays abgelegt, als auch unter assoziativen Indizes. Als Schlüssel für die assoziativen Indizes werden die Feldnamen benutzt.

Falls zwei oder mehrere Spalten des Ergebnisses den gleichen Feldnamen haben, dann wird nur der Wert der letzten Spalte im Array unter diesem Feldnamen abgelegt. Um auch auf die anderen gleichnamigen Spalten zugreifen zu können, müssen Sie den numerischen Index der Spalte verwenden oder einen Alias für die Spalte vergeben. Falls Sie Aliase für Spalten verwenden, können Sie auf die Inhalte dieser Spalten nicht über ihren ursprünglichen Namen zugreifen. (In folgendem Beispiel können Sie 'field' nicht benutzen).

Beispiel 1. Abfrage mit alias für identische Feldnamen

SELECT table1.field AS foo, table2.field AS bar FROM table1, table2

Zu betonen ist, dass der Gebrauch von mysql_fetch_array() nicht signifikant langsamer ist als mysql_fetch_row(), obwohl die Funktion einen sichtlichen Mehrwert bietet.

Das optionale zweite Argument Ergebnistyp in mysql_fetch_array() ist eine Konstante und kann die folgenden Werte annehmen: MYSQL_ASSOC, MYSQL_NUM und MYSQL_BOTH. Diese Eigenschaft steht seit PHP 3.0.7 zur Verfügung. MYSQL_BOTH ist der Standard für diesen Paramater.

Verwenden Sie MYSQL_BOTH, erhalten Sie ein Array mit assoziativen und numerischen Indizes. Bei MYSQL_ASSOC erhalten Sie nur asoziative Indizes (genau wie bei mysql_fetch_assoc()). Verwenden Sie MYSQL_NUM erhalten Sie nur numerische Indizes (genau wie bei mysql_fetch_row()).

Anmerkung: Feldnamen, die von dieser Funktion zurückgegeben werden, unterscheiden sich in der Groß-/Kleinschreibung.

Anmerkung: Diese Funktion setzt NULL Felder auf den PHP Wert NULL.

Beispiel 2. mysql_fetch_array() mit MYSQL_NUM
<?php
mysql_connect("localhost", "mysql_user", "mysql_password")
or die("Keine Verbindung möglich: " . mysql_error());
mysql_select_db("mydb");

$result = mysql_query("SELECT id, name FROM mytable");

while ($row = mysql_fetch_array($result, MYSQL_NUM)) {
printf ("ID: %s Name: %s", $row[0], $row[1]);
}

mysql_free_result($result);
?>

Beispiel 3. mysql_fetch_array() mit MYSQL_ASSOC
<?php
mysql_connect("localhost", "mysql_user", "mysql_password")
or die("Keine Verbindung möglich: " . mysql_error());
mysql_select_db("mydb");

$result = mysql_query("SELECT id, name FROM mytable");

while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
printf ("ID: %s Name: %s", $row["id"], $row["name"]);
}

mysql_free_result($result);
?>

Beispiel 4. mysql_fetch_array() mit MYSQL_BOTH
<?php
mysql_connect("localhost", "mysql_user", "mysql_password")
or die("Keine Verbindung möglich: " . mysql_error());
mysql_select_db("mydb");

$result = mysql_query("SELECT id, name FROM mytable");

while ($row = mysql_fetch_array($result, MYSQL_BOTH)) {
printf ("ID: %s Name: %s", $row[0], $row["name"]);
}

mysql_free_result($result);
?>
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben