Alle Variablen auslesen
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
antworten
arbeiten
ast
bedingung
besitzer
bessere lesbarkeit
code
dank
datum
lese
leute
ordern
re
sache
sortieren
spalte
tabelle
type
verbundene arbeit
zeile
-
Hallo ref="/tag/leute">Leute,
ich habe ein kleines Problem.
Ich lese momentan alle Daten aus der Datenbank aus und setzte diese in mehrere Variablen:
$sache[>>der name<<]= >>die anzahl der gleichen sache<< ;
Nun möchte ich jede Sache in einer Tabelle ausgeben.
Das wäre kein Problem wenn die Variable regelmäßig wie 1,2,3,4,5 aussehen würde, doch leider gibt es keinerlei Regelmäßigkeit.
Somit sieht die Variable gerne auch mal so aus:
$sache[schaumbad]=5;
und die zweite im script dann
$sache[ast]=1;
Bitte helft mir.
MFG Marvin
Beitrag zuletzt geändert: 18.12.2010 18:54:22 von das-dorf -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
tja dann geh mit foreach durch..
$sache[]=mysql_fetch_array(datenausDB); foreach($sache as $key) // Schleife die dir die indizerung gibt mit der du arbeiten kannst... { echo $sache[$key]; }
-
Ok, so komme ich einfach nicht weiter!
Gibt es einen Weg die Datenbankeinträge dynamisch zusammen zufassen?
Also wenn der Eintrag mit dem namen Ast 30 Mal registriert ist wird in einer Tabelle ast und die zahl 30 ausgegeben.
Leider müssen die Namen Dynamisch sein. Wie bei Usernamen, die kann ich nicht alle vordefinieren. -
foreach (DB::q('SELECT name, COUNT(*) as num FROM table GROUP BY name ORDER BY num DESC') as $row) { echo $row[0], ': ', $row[1], "\n"; }
-
Versuchs doch mal mit dem SQL befehl "count".
Ein Beispiel wäre also das hier so in etwa:
"SELECT type, COUNT(type) FROM products GROUP BY type"
Das ist das was Nikic schrieb, allerdings nur der query. Einfach deinem query anpassen und abfragen. Dann jede Zeile wieder mit foreach().
@Nikic:
sry habs zu spät erkannt allerdings ist deins eher Objektorientiert.
Beitrag zuletzt geändert: 18.12.2010 20:27:16 von karlsve -
Um deine Variablen wirklich gut auszulesen, verwende am besten var_dump():
var_dump($sache);
So kriegst du die kompletten Infos über deine Variable/Array. Für eine bessere Lesbarkeit, einfach den Quelltext ansehen. -
Ich will euch nicht belästigen, aber es funktioniert leider nicht :(
Sortieren/Zählen möchte ich nach "name" Bedingung ist das in der Spalte "besitzer" das gleiche steht wie hier "$user[ID]".
Ich danke euch trotz alledem schon mal für eure Antworten.
Beitrag zuletzt geändert: 18.12.2010 20:57:32 von das-dorf -
das-dorf schrieb:
Ich will euch nicht belästigen, aber es funktioniert leider nicht :(
Sortieren/Zählen möchte ich nach "name" Bedingung ist das in der Spalte "besitzer" das gleiche steht wie hier "$user[ID]".
Ich danke euch trotz alledem schon mal für eure Antworten.
Meinst dus so?
echo "<ul>"; $sql = "SELECT * FROM spalte WHERE besitzer = '".$user["id"]."' ORDER BY name"; $res = mysql_query($sql); while($row = mysql_fetch_assoc($res)) { echo "<li>".$row["name"]."</li>"; } echo "</ul>"; echo "<p>Gesamt: ".mysql_num_rows($res)."</p>";
/Edit: RSF
Beitrag zuletzt geändert: 18.12.2010 21:35:39 von trueweb -
Entschuldigt bitte die langsame Antwort und die damit verbundene Arbeit für dich, aber ich habe es soeben selber geschafft.
$query = "SELECT vpreis, kpreis, chance, MIN(name), COUNT(name) FROM niix_besitz where besitzer='$user[ID]' GROUP BY name"; $result = mysql_query($query) or die(mysql_error());
Aber trotz alledem vielen Dank für eure hilfe
Beitrag zuletzt geändert: 19.12.2010 10:51:58 von das-dorf -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage