Mehrere Resultate einer Abfrage in eine Variable

banshe

Mitglied
Hallo zusammen...

Ich brauche hilfe =(...

Ich möchte mehrere Variable die ich aus meiner SQL Datenbank abfrage, in eine Variable speichern...

Ich möchte später mit der Variable eine art Formel durchführen lassen... Beispiel: "Nimm das und das von dem User A und rechne das zusammen"
Jetz möchte ich das nicht mit jedem User manuell machen... sondern er soll alle User von der Tabelle "choice" nehmen... und die Formel dann mit User A, User B, User C... machen

Die SQL Abfrage geht, ist ja auch ne einfache Abfrage... sie zeigt mir alle Usernamen an...
Ich bin warscheinlich völlig auf dem falschen Dampfer mit meiner Formel... wie muss ich das machen?
PHP:
<?php
	$sock=mysql_connect ("localhost","blabla", "blabla");
	mysql_select_db ("blabla");

  $urname=mysql_query("SELECT username FROM choice");
  if($arr=mysql_fetch_assoc($urname));

$usrname=$arr['username'];
?>

Danke euch
 
Zuletzt bearbeitet:
Deine Formel-Geschichte versteh chn icht. Willst du mit jedem User ienfach dasselbe machen oder die User mischen?

Alle usernaen in einen Array schreiben geht so:
PHP:
$urname=mysql_query("SELECT username FROM choice");
while($arr=mysql_fetch_assoc($urname)){
    $users[]=$arr['username'];
}
 
Etwas feiner ;)

PHP:
<?php

	$sock = mysql_connect ("localhost","blabla", "blabla");
	mysql_select_db ("blabla", $sock);
	
	$data_user = array();
	$sql1 = mysql_query("SELECT username FROM choice");
	$res1 = mysql_fetch_array($sql1);
	while ($res1)
	{
		$data_user[] = $res1;
		$res1 = mysql_fetch_array($sql1);
	}

?>

Als Result gibt es ein Array, welches von 0 bis count(username) durchnummeriert ist und mit $data_user[N] = aktueller Usernick genutzt werden kann.
Beim "mysql_select_db" bin ich mir jetzt nicht sicher, ob du das auch die Resource mit Angeben musst
 
PHP:
$data_user[] = $res1;
Dies bewirkt jedoch, dass es ein 2-Dimensionales Array gibt.
Code:
array(
  [0] => array(
                [username] => 'user1'
              ),
  [1] => array(
                [username] => 'user2'
              ),
  [2] => array(
                [username] => 'user3'
              )
)

Mit $res1['username'] hingegen gibts das folgende Array
Code:
array(
  [0] => 'user1',
  [1] => 'user2',
  [2] => 'user3'
)
 
PHP:
$data_user[] = $res1;
Dies bewirkt jedoch, dass es ein 2-Dimensionales Array gibt.
Code:
array(
  [0] => array(
                [username] => 'user1'
              ),
  [1] => array(
                [username] => 'user2'
              ),
  [2] => array(
                [username] => 'user3'
              )
)

Mit $res1['username'] hingegen gibts das folgende Array
Code:
array(
  [0] => 'user1',
  [1] => 'user2',
  [2] => 'user3'
)

Stimmt, meins wäre ein mehrdimensionales Array, welches vermiutlich nicht benötigt wird (wenn es nicht mit foreach ($data_user as $data) abgearbeitet wird).
In diesem Fall wäre natürlich das Beispiel von yaslaw richtiger ;)
 
Deine Formel-Geschichte versteh chn icht. Willst du mit jedem User ienfach dasselbe machen oder die User mischen?

Ich möchte mit jedem User eine bestimmte Formel ausführen...

Jedoch kommen immer mehr User dazu... und ich möchte dies nicht nachtragen müssen...
ich möchte, dass er alle User aus einer Tabelle nimmt.. und mit jedem User einzelln diese Formel durchführt... am schluss möchte ich das Resultat aller User anzeigen lassen..

funktioniert das denn mit?:

PHP:
$urname=mysql_query("SELECT username FROM choice");
while($arr=mysql_fetch_assoc($urname)){
    $users[]=$arr['username'];
}

Ich werd es ausprobieren sobald ich Zuhause bin.. Danke schonmals viel viel mal!
 
Zuletzt bearbeitet:
Ich habe den Code

PHP:
$urname=mysql_query("SELECT username FROM choice");
while($arr=mysql_fetch_assoc($urname)){
    $users[]=$arr['username'];
}

ausprobiert... funktioniert irgendwie nicht..
Ich habe per echo den wert von $users ausgegeben um zu schauen woran es liegt...

PHP:
<?php
echo $users;
?>

Das Resultat ist

Code:
Array

Anstatt der Namen von meiner Liste.. .Was hab ich falsch gemacht?

Danke
 
Zuletzt bearbeitet:
Achsoo... klar.. Dankeschön... :)

aber das ganze ist ja zum Haare ausreissen...
Das Resultat ist jetzt richtig...

Code:
Array ( [0] => sadinsky [1] => banshe [2] => leeloo [3] => simy )

Aber wie kann ich jetzt damit weiterarbeiten?
Ich möchte jetzt mit diesen Namen folgendes machen:

PHP:
if ($choice==$firstplace)
{
$result=mysql_query ("INSERT INTO ranklist (username,points) VALUES ('$users','$firstpoint')");
}

Jetzt soll er mit jedem Namen aus dieser Array, diese IF Formel ausführen.... Wie geht das jetzt mit diesem Array Resultat?

Vielen Dank... wüsste garnicht weiter ohne eure Hilfe..

Grüsse
 
Zuletzt bearbeitet:
Zurück