Variable definieren

EM-Autotechnik

Erfahrenes Mitglied
Haloo zusammen!

Habe mal wieder eine Aufgabe für die Profis :)

Also habe zwei Scripte.

Script 1 erstellt mir Variablen in einem HTML Ausdruck:

PHP:
?>
<input type="hidden" name="name<?echo "$count";?>" 
value="<?echo "$Name";?>">
<input type="hidden" name="id<?echo "$count";?>" 
value="<?echo "$ID";?>">
<?

Das ganze findet innerhalb einer WHILE Schleife statt....
"$count" erstellt mir somit jedesmal einen neuen Variablen Namen.

Sieht dann so aus... : $name0 = 0; $name1 = 1; .... $name\n = \n...
$id0 = 0; $id1 =1; .... $id\n = \n...

Script 2 sollte nun diese Variablen auswerten:
dh: habe eine FOR Schleife die mir nun die Variablen Namen definieren sollte...:


PHP:
for ($count = 0; $count <= "$anzahl"; $count+=1){

       $Name = "$name&'$count' ";     // <--- 
       $ID = "$id&'$count' ";                    // <--- 
       ?>
       <form method="post" name="m_data"><tr><td>
       <p class="menubutton"
       onmouseover="this.className='menuover'"
       onmouseout="this.className='menubutton'"
       onClick="window.parent['menudataFrame'].location='menudata.php?<?echo "button=$ID";?>
       ';return false;">
       <img src="/images/plus.gif" border="0" align="bottom">
       <?echo "$Name";?>
       </p></td></tr></form>
       <?
  }

Nun weis ich leider nicht Wie man den name einer Variablen variable macht :)
mit Arrays wäre das sicher einfacher... nur habe ich damit noch nicht so viel Erfahrung....

mfg sebastian
 
1. Variablen verbindet man mit Punkten.

2. Wie, while schleife? Das ganze hat doch keinen Sinn,da jeweils EIN User dieses Formular liest.
Also liest du das Ganze aus einer Datenbank oder Textdatei aus.
Datenbank, höchsten Wert lesen:
select max(id) from users

Dann kannst du das Ganze mit fetch_row in ein Array stecken und das [0]. Element(also das Erste) auslesen.

Ich verstehe den Sinn des Variable in einer Variablen Speicherns nicht, du kannst jederzeit einer Variablen einen Wert aus einer anderen Var zuweisen.
Mit arrays hast du den Vorteil,dass du eine Unbestimmte Anazahl von Elementen speichern kannst und sie dann alle unabhängig von der Länge mit for/count oder ab PHP4 mit foreach auslesen kannst.

Konkretisiere bitte deine Fragestellung,da die "markierten Stellen" eigentlich nur eine Syntaxfrage darstellen; dann wäre ich gerne bereit, dir etwas zu helfen :)

[edit] [off-top] naddel hängt mir grad am bein, sorry aber ich hab grad nicht die Zeit, mir deine Frage auszudenken[/off-top] [/edit]
 
Variablen Name definieren

Also kann dir etwas mehr Quelltext liefern...

Script 1 (menudata.php) liesst mir aus meiner Datenbank die Menudaten aus:

PHP:
<?PHP
include ("DBverbindung");
$sql = "SELECT * FROM Menudata";
$res_menu = mysql_query ($sql, $db);
$count = "0";

?>
<form name="menu_var" action="menu.php" method="post" target="menuFrame">
<?

   while ($data = mysql_fetch_array ($res_menu)) {
        
  $Name = $data["Name"];
  $ID = $data["ID"];
?>
<input type="hidden" name="name<?echo "$count";?>" value="<?echo "$Name";?>">
<input type="hidden" name="id<?echo "$count";?>" value="<?echo "$ID";?>">
<?
   $count = "$count"+"1";
   }
   
?>
<input type="hidden" name="anzahl" value="<?echo "$count";?>">
</form>
<script type="text/javascript">
window.document['menu_var'].submit();
</script>

Script 2 (menu.php) wertet die Variablen aus und erstellt die HTML Site:

PHP:
<?PHP

     for ($count = 0; $count <= "$anzahl"; $count+=1){
       $Name = "$name&'$count' ";     // <--- 
       $ID = "$id&'$count' ";                    // <--- 
       
       ?>
       <form method="post" name="m_data"><tr><td>
       <p class="menubutton"
       onmouseover="this.className='menuover'"
       onmouseout="this.className='menubutton'"
       onClick="window.parent['menudataFrame'].location='menudata.php?<?echo "button=$ID";?>
       ';return false;">
       <img src="/images/plus.gif" border="0" align="bottom">
       <?echo "$Name";?>
       </p></td></tr></form>
       <?
  }
?>

Danke für Deine Hilfe!
mfg
 
Zuletzt bearbeitet:
Variablen Namen erstellen

Also soll ich meine Frage noch ein bischen besser stellen


Ich brauche den Befehl der mir den Inhalt einer Variablen ausgibt. dh.

mein 2. Script erhält Variable:

Anzahl = n.... // unbestimmt.
Name = $name\n
Name = $id\n

jetzt möchte ich auf diese Variablen zugreifen:

logisch... mit $name1, $name2, $id1, id2... geht es...

aber ich möchte die Zahl x hinter zb. $name(x) innerhalb meiner FOR Schleife
variable machen... nur wie erhalte ich die korrekte Formatierung

Danke für Eure Hilfe

mfg Sebastian
 
variable Variablen

Genau das habe ich gemeint...

habe allerding schon eine Lösung gefunden:

PHP:
$Name = "${name.$count}";

zumindest erhalte ich jetzt das richtige Ergebnis....
ob das die richtige Ausdrucksweise ist weis ich nicht....
zumindest geht es :)

Danke trotzdem!
 
Zurück