Variable mit SQL-Wert belegen

|Nemo|
Wie kann ich eine Variable mit einem Wert belegen, der aus der MySQL-Datenbank ausgelesen wird?
Das sollte dann so sein:
SELECT image_file from images WHERE image_id = '$id'");
Dann soll die Variable $image_file mit diesem Wert, der da ausgelesen wird, belegt werden.
Wie kann man das erreichen?
[kamui]
php:
1:
2:
$query "SELECT image_file FROM images WHERE image_id='".$id."'";
$row mysql_query($query);


Dann hast du $row['image_file'], du könntest es aber auch so machen:

php:
1:
2:
3:
$query "SELECT image_file FROM images WHERE image_id='".$id."'";
$row mysql_query($query);
foreach ($row as $key=>$value) { ${$key} = $value; }


Dann hast du alle Variablen aus $row als einzelne Variablen!
|Nemo|
Erstmal danke!
Ich habe jetzt folgenden Code eingefügt:
php:
1:
2:
3:
4:
5:
6:
7:
<?php
$query "SELECT image_file FROM images" WHERE image_id='5';
$row mysql_query($query); 
echo '<div style="color: #000000; font-family: arial; font-size: 28px">';
echo $row['image_file'];
echo '</div>';
?>

Aber es wird nichts angezeigt.
Und in der Tabelle "images" gibt es einen Eintrag mit folgenden Werten:
image_file: img68.jpg
image_id: 5
SSJ5000
Zitat:
Original von |Nemo|
Erstmal danke!
Ich habe jetzt folgenden Code eingefügt:
php:
1:
2:
3:
4:
5:
6:
7:
<?php
$query "SELECT image_file FROM images" WHERE image_id='5';
$row mysql_query($query); 
echo '<div style="color: #000000; font-family: arial; font-size: 28px">';
echo $row['image_file'];
echo '</div>';
?>

Aber es wird nichts angezeigt.
Und in der Tabelle "images" gibt es einen Eintrag mit folgenden Werten:
image_file: img68.jpg
image_id: 5

php:
1:
2:
3:
4:
5:
6:
7:
8:
<?php
$query "SELECT image_file FROM images" WHERE image_id='5';
$res mysql_query($query);
$row=mysql_fetch_array($resMYSQL_ASSOC);
echo '<div style="color: #000000; font-family: arial; font-size: 28px">';
echo $row['image_file'];
echo '</div>';
?>


mit mysql_query bekommt man nur eine resource ID die bringt einem aber noch nichts.
[kamui]
Zitat:
Original von SSJ5000
mit mysql_query bekommt man nur eine resource ID die bringt einem aber noch nichts.


Mein Fehler XD Hatte fetch_array vergessen ...
|Nemo|
Danke euch beiden. Jetzt kommt aber folgender Fehler:
Zitat:
Parse error: syntax error, unexpected T_STRING in ... : eval()'d code ...

Der Fehler steckt irgendwo in diesem PHP-Code mit der SQL-Abfrage. Wahrscheinlich in der folgenden Zeile:
<?php
$query = "SELECT image_file FROM images" WHERE image_id='5';
$res = mysql_query($query);
$row=mysql_fetch_array($res, MYSQL_ASSOC);
echo '<div style="color: #000000; font-family: arial; font-size: 28px">';
echo $row['image_file'];
echo '</div>';
?>
[kamui]
Das war SSJ5000s Fehler smile

php:
1:
2:
3:
4:
5:
6:
7:
8:
<?php
$query "SELECT image_file FROM images WHERE image_id='5'";
$res mysql_query($query);
$row=mysql_fetch_array($resMYSQL_ASSOC);
echo '<div style="color: #000000; font-family: arial; font-size: 28px">';
echo $row['image_file'];
echo '</div>';
?>
|Nemo|
Super, funktioniert!
Meine letzte Frage zu diesem Thema: großes Grinsen
Ich habe eine Variable {name} für den Bildtitel. Aber die kann ich ja in PHP nicht verwenden, oder?
php:
1:
$query "SELECT image_file FROM images WHERE image_id='{name}'";

Kann ja nicht funktionieren, weil die Klammern in PHP doch eine andere Funktion haben!?
Aber wie kann ich die Variable trotzdem benutzen? Denn
$name = {name} kann ich ja auch nicht machen.
[kamui]
In PHP muss irgendwo eine Stelle vorkommen, wo die Varialbe {name} definiert wird. Dann schreibst du eine Zeile weiter unten " $name = ... ", wobei ... der Inhalt ist, der der Variable zugeteilt wird.

Am Ende benutzt du dann die Variable $name
xundy
Du musst den auszugebenen Text evaluieren bevor du ihn ausgibst dann kannst du mit str_replace den entsprechenden Teile gegen den Wert ersetzen

mfg