Var. nur 1x definieren u. öfters benutzen (php/sql

Mein momentaner Wissensstand besagt, daß ich unten das Beispiel (IST) nur einmal in einer php Datei anwenden darf. Also mit dem Variablennamen $textbausteinX.
Wenn ich meinen Textbaustein jetzt öfters ausgeben lassen will, muss ich im folgenden Script aus $textbausteinX ein $textbausteinY machen und wenn ich es ein drittes mal ausgeben lassen will, dann $textbausteinZ .

IST ZUSTAND:

$textbausteinX\_abfrage = "SELECT `textbaustein` FROM `bla` WHERE `textbaustein` LIKE 'blubb'";
$textbausteinX = mysql\_query($textbausteinX\_abfrage); 
while($row = mysql\_fetch\_assoc($textbausteinX)) { if($row['textbaustein']!="") { echo "/"; } else { echo ""; } }

$textbausteinY\_abfrage = "SELECT `textbaustein` FROM `bla` WHERE `textbaustein` LIKE 'blubb'";
$textbausteinY = mysql\_query($textbausteinY\_abfrage); 
while($row = mysql\_fetch\_assoc($textbausteinY)) { if($row['textbaustein']!="") { echo "/"; } else { echo ""; } }

$textbausteinZ\_abfrage = "SELECT `textbaustein` FROM `bla` WHERE `textbaustein` LIKE 'blubb'";
$textbausteinZ = mysql\_query($textbausteinZ\_abfrage); 
while($row = mysql\_fetch\_assoc($textbausteinZ)) { if($row['textbaustein']!="") { echo "/"; } else { echo ""; } }

SOLL ZUSTAND:

$textbausteinX\_abfrage = "SELECT `textbaustein` FROM `bla` WHERE `textbaustein` LIKE 'blubb'";
$textbausteinX = mysql\_query($textbausteinX\_abfrage); 

while($row = mysql\_fetch\_assoc($textbausteinX)) { if($row['textbaustein']!="") { echo "/"; } else { echo ""; } }
while($row = mysql\_fetch\_assoc($textbausteinX)) { if($row['textbaustein']!="") { echo "/"; } else { echo ""; } }
while($row = mysql\_fetch\_assoc($textbausteinX)) { if($row['textbaustein']!="") { echo "/"; } else { echo ""; } }

Ich scheine deine Frage irgendwie nicht wirklich zu verstehen.
Du kannst eine einmal deklarierte Variable natürlich beliebig oft verwenden.

Hallo

Mein momentaner Wissensstand besagt, daß ich unten das
Beispiel (IST) nur einmal in einer php Datei anwenden darf.
Also mit dem Variablennamen $textbausteinX.
Wenn ich meinen Textbaustein jetzt öfters ausgeben lassen
will, muss ich im folgenden Script aus $textbausteinX ein
$textbausteinY machen und wenn ich es ein drittes mal ausgeben
lassen will, dann $textbausteinZ .

Nein, du kannst jedes Mal X verwenden. Die erste Zeile brauchst du auch nicht zu wiederholen, denn mysql_query() nimmt keine Änderungen an $textbausteinX_abfrage vor, du kannst die Variable also einfach erneut in mysql_query() einsetzen.

Anders ist das mit $textbausteinX. mysql_fetch_assoc() schlachtet die Variable sozusagen aus, sie ist danach „leer“ und muss mit einem neuen mysql_query neu gefüllt werden.

Das

else { echo ""; }

kannst du dir sparen, denn es tut genau nichts.

Dieses Vorgehen hat aber den Nachteil, dass drei mal die gleiche Anfrage an den MySQL-Server gestellt wird. Eleganter wäre es so:

$textbausteinX\_abfrage = "SELECT `textbaustein` FROM `bla` WHERE `textbaustein` LIKE 'blubb'";
$textbausteinX\_antwort = mysql\_query($textbausteinX\_abfrage);
$textbausteinX = "";
while($row = mysql\_fetch\_assoc($textbausteinX\_antwort)) {
if($row['textbaustein']!="") { $textbausteinX .= "/"; }
}

echo $textbausteinX;
echo $textbausteinX;
echo $textbausteinX;

Mit .= kann man weiteren Text an eine Variable anhängen.

Johannes