PHP Daten aus SQL in verschiedene Varriablen speichern

CreamyCewie

Photoshop-Künstler
Hi ich hab ein Problem,

ich lese werte aus ner SQL aus.
Nun will ich diese in Verschiedene Varriablen speichern ($ID1 bis $ID12)

mein bisheriger Code:

PHP:
<?php 
	//Verbindung zur DB herstellen
	include ('inc/mysql/connect-articles.php');
	
		$sql_command="
		SELECT ArticleNr 
			FROM ArticleData
				ORDER BY RAND() 
					LIMIT 12	
		";
			mysqli_query($article_database , $sql_command);

						if (!$result = $article_database->query($sql_command)) {

							die ('Es konnte kein SQL-Query vorbereitet werden: '.$article_database->error);

						}

						else {

						while($row = $result->fetch_array())

							{

								

							}

						}
?>

wie wär das zu realisieren?

lg

creamy
 
Hi, bin zwar in PHP nicht so bewandert aber ich versuchs mal.

Wenn ich dein Anliegen richtig verstehe willst du jeweils die Daten die in der while-Schleife in $row gespeichert werden, in eine andere Variable speichern, um diese später weiter verwenden zu können. Dazu würde ich die Variablen $ID1 bis $ID12 nicht als einzelne Variablen anlegen, sondern ein Array $ID[] anlegen und dann mit dem Index arbeiten. Somit kannst du die Daten dann später auch wieder schön in einer Schleife weiter verarbeiten. Konkret ca so:

PHP:
$i = 0;
while($row = $result->fetch_array()) 
{
    $ID[$i] = $row;
    $i++;
}

Wenn du wirklich die Variablen $ID1 bis $ID12 verwenden willst, würde mir spontan auch grad nur einfallen, das du auch wieder z.B. $i als Zählvariable nimmst, und dann in der while-Schleife eine switch-Abfrage machst, und dann je nachdem $row deiner gewünschten Variable zuweist. Das wäre allerdings dasselbe wie mit einem Array nur umständlicher und unpraktischer ^^
 
Wenn du wirklich die Variablen $ID1 bis $ID12 verwenden willst, würde mir spontan auch grad nur einfallen, das du auch wieder z.B. $i als Zählvariable nimmst, und dann in der while-Schleife eine switch-Abfrage machst, und dann je nachdem $row deiner gewünschten Variable zuweist. Das wäre allerdings dasselbe wie mit einem Array nur umständlicher und unpraktischer ^^

Nicht unbedingt. Man kann auch Variablen in Variablen-Namen verwenden. Mittels Schleife kann man jede Variable durchgehen, sofern sich nur die Zahl im Namen ändert.
Beispielsweise so:

PHP:
for ($counter=1; $counter<=12; $counter ++)
$ID$counter = $row[($counter-1)];

Somit erhält $ID1 dann den Inhalt aus $row[0], $ID2 aus $row[1] etc.

Ist jetzt nur ein Konzept, kann sein, dass das nicht ganz so klappt (vermutlich geht die Klammer als Index nicht, z.B.). Aber ich hoffe es ist klar was ich meinte.
 
Hm, eine Sprache in der du dir so einfach neue Variablennamen basteln kannst, ist mir gerade nicht bekannt. Bei einer Hochsprache, wie z.B. Java, wird dir das auf jedenfall einen Fehler geben. Bei PHP kann ich mir eigentlich auch nicht vorstellen, dass das funktioniert.
Deine Klammer als Index sollte aber funktionieren, solange die Arraygrenzen nicht überschritten werden ;)
 
Oben