arrays

nick25

Well-known member
ID: 205997
L
30 Mai 2009
515
23
ich habe ein download script das über arrays läuft. die array sehen so aus.

PHP:
$download_dirs = array(
  "Script 1" => array(
      "dir"     		=> "datei/testscript1/",
      "name"    		=> "Script 1",
      "password"		=> "123",
  ),
  "Script 2" => array(
      "dir"     		=> "datei/testscript2/",
      "name"    		=> "Script 2",
      "password"		=> "456",
  ),
  "Script 3" => array(
      "dir"     		=> "datei/testscript3/",
      "name"    		=> "Script 3",
      "password"		=> "789",
  ),

);

ich möchte gerne diese arrays über sql ausführen damit ich die scripte im adminbereich eintragen kann und nicht in der confg datei per hand eintragen muss.

mein ansatz:

PHP:
$dbname = 'test15'; 
$dbhost = 'localhost'; 
$dbuser = 'xxxx'; 
$dbpass = 'xxxx';

$db = mysql_connect($dbhost, $dbuser, $dbpass) or die(mysql_error());
mysql_select_db($dbname,$db) or die(mysql_error());

$abfrage = "SELECT * from downloads";
$ergebnis = mysql_query($abfrage);

$download_dirs = array(
 while($row=mysql_fetch_array($ergebnis))
	{
	   $name = $row[1];
           $dir = $row[2];
           $passwort = $row[3];
           
      "$name" => array(
      "dir"     		=> "datei/$dir/",
      "name"    		=> "$name",
      "password"		=> "$passwort",
  ),
     
    }
 );

leider funktioniert es nich. wie bekomme ich es hin, das es wie oben aussieht.
 
leider funktioniert es nich.
Danke für die exakte Problembeschreibung :roll:

Du hast einen Syntaxfehler in Zeile 19. Einen weiteren in Zeile 23.
Und eine absolute Nonsense-Konstruktion in Zeile 12/13. Da steht ne while-Schleife in nem Array drin :ugly:

Freilich funktioniert es nicht. Du musst schon korrektes PHP schreiben, damit der Interpreter arbeiten kann.
 
ja klar ist es blödsin eine while schleife in nem array. wie ich geschriewben habe ist es ein ansatz. ich weiß nicht wie ich es schreiben soll damit es wie in der vorschau aussieht.
 
PHP:
$download_dirs = array();
while($row=mysql_fetch_array($ergebnis))
   {
      $download_dirs[$row[1]] = array(
        'dir'             => 'datei/'.$row[2].'/',
        'name'            => $row[1],
        'password'        => $row[3], 
      );
   }


Du gehst über die Ergebnisse der Query und füllst dabei dein Array. Ist eigentlich ganz einfach... wenn man es erst mal weiss.
 
vielen dank Serkan. wäre ich nich drauf gekommen. ich sollte mich nochmal mit arrays beschäftigen.

vielen dank