| PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Post your PHP questions here! |
 |
|

01-11-2007, 17:01
|
|
tim.brauer
Newbie
|
|
Registriert seit: Aug 2006
Beiträge: 26
|
|
In einer while Schleife Variablen erstellen ?
Mal wieder ich, bitte nicht die Augen verdrehen: Aber wenn einem immer so gut, nett und schnell wie hier geholfen wird fragt man halt gerne nochmal ;-)
Folgendes Problem:
Ich hole mir mit mit einer sql query einen Satz Daten aus der Datenbank. Aus dem zurückgelieferten Array will ich mir nun verschiedene Variablen machen.
PHP-Code:
$resultx=mysql_query("select DISTINCT MODEL from tabelle");
$resultx[0] = $model1;
$resultx[1] = $model2;
...
Ist $resultx vielleicht doch kein Array, oder versuche ich nur falsch es auszulesen ?
Vielen Dank im Voraus !
Tim
|

01-11-2007, 17:06
|
|
XGremliN
PHP Senior
|
|
Registriert seit: Sep 2003
Ort: Karl-Marx-Stadt
Beiträge: 1.900
|
|
$resultx ist dein komletteer Datensatz.
auf die einzelnen Teile kannst du so zugreifen:
$tmp_array[0] = $model1;
$tmp_array[1] = $model2;
__________________
it's not a bug,
it's a feature!
|

01-11-2007, 17:07
|
Kropff
  Administrator
|
|
Registriert seit: Mar 2002
Ort: Köln
Beiträge: 11.308
|
|
$resultx ist nur ein zeiger auf das ergebnis deiner abfrage. dies musst du noch in einer schleife verarbeiten:
PHP-Code:
$resultx=mysql_query("select DISTINCT MODEL from tabelle");
while ($row = mysql_fetch_row ($resultx))
{
$bla = $row[0];
$blubb = $row[1];
}
gruß
peter
__________________
Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
Meine Seite
|

01-11-2007, 17:14
|
TobiaZ
 Moderator
|
|
Registriert seit: Jan 2001
Ort: MUC und MGL, Germany
Beiträge: 34.188
|
|
Abgesehen davon, dass du eigentlich eine Notice erhalten solltest, fehlen dir so generelle Grundlagen, wie das richtige Zuweisen:
$variabel = "wert";
NICHT wert=variable...
|

01-11-2007, 17:28
|
|
tim.brauer
Newbie
|
|
Registriert seit: Aug 2006
Beiträge: 26
|
|
Danke schon mal...
PHP-Code:
while ($rowx = mysql_fetch_array($resultx))
{$mod1= $rowx[0];$mod2= $rowx[1];$mod3= $rowx[2]; ... }
echo $mod1."<br>"; echo $mod2."<br>"; echo $mod3."<br>"; ...
zeigt aber leider immer noch nur leere Variablen...
dank mysql_affected_rows weiß ich aber, dass es 10 Einträge sein müssten.
|

01-11-2007, 17:35
|
Kropff
  Administrator
|
|
Registriert seit: Mar 2002
Ort: Köln
Beiträge: 11.308
|
|
bist du mal auf die idee gekommen, die echos innerhalb der schleife aufzurufen? ich denke, du solltest dich erst mal mit den elementarsten grundlagen beschäftigen.
gruß
peter
__________________
Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
Meine Seite
|

01-11-2007, 17:41
|
|
tim.brauer
Newbie
|
|
Registriert seit: Aug 2006
Beiträge: 26
|
|
aber genau das ist doch das problem, ich brauch die ausserhalb der schleife ! Deshalb ja meine Idee, die ohne while Schleife aufzurufen - sorry wenn ich mich da doof ausgedrückt habe!
TobiaZ hat natürlich recht, die letzte wird ausgegeben...
Geändert von tim.brauer (01-11-2007 um 17:45 Uhr)
|

01-11-2007, 17:42
|
TobiaZ
 Moderator
|
|
Registriert seit: Jan 2001
Ort: MUC und MGL, Germany
Beiträge: 34.188
|
|
aber zumindest die letzte zeile sollte eigentlich schon ausgegeben werden.
Aber generell wären testausgaben sicher nicht falsch.
und kropffs grundlagen natürlich auch.
|

01-11-2007, 17:46
|
TobiaZ
 Moderator
|
|
Registriert seit: Jan 2001
Ort: MUC und MGL, Germany
Beiträge: 34.188
|
|
Zitat:
Original geschrieben von tim.brauer
aber genau das ist doch das problem, ich brauch die ausserhalb der schleife ! Deshalb ja meine Idee, die ohne while Schleife aufzurufen - sorry wenn ich mich da doof ausgedrückt habe!
TobiaZ hat natürlich recht, die letzte wird ausgegeben...
|
Dann solltest du die Variablen vielleicht nicht bei jedem durchlauf überschreiben.
Trotzdem sollte mindestens die letzte Zeile ausgegeben werden.
Schalt das error_reporting an! EDIT: Na klar, hab ich recht. Dann weißt du ja jetzt, wo dein Problem liegt.
|

01-11-2007, 17:52
|
|
tim.brauer
Newbie
|
|
Registriert seit: Aug 2006
Beiträge: 26
|
|
Zitat:
|
Dann weißt du ja jetzt, wo dein Problem liegt.
|
Aber, aber, *heuuuuuul*...
Wo das Problem ist wusste ich doch schon vorher:
Ich will mit den aus der Datenbank zurückgelieferten Werte einzeln durchnummerierte Variablen füllen.
Bitte *flehendguck* helft mir !
EDIT:
Was ich gemeint habe war
PHP-Code:
while ($rowx = mysql_fetch_array($resultx))
{
$model[]=$rowx['MODEL'];
}
Geändert von tim.brauer (01-11-2007 um 18:33 Uhr)
|

01-11-2007, 18:31
|
|
PHP-Desaster
PHP Expert
|
|
Registriert seit: Mar 2006
Beiträge: 3.104
|
|
Was suchst du eigentlich??
PHP-Code:
for( $i=0; $i<10; $i++ ) {
${'var'.$i} = null;
}
Jetzt hast du die Variablen var0, var1, var2, ..., var9 initialisiert!
|

01-11-2007, 18:37
|
Kropff
  Administrator
|
|
Registriert seit: Mar 2002
Ort: Köln
Beiträge: 11.308
|
|
Zitat:
Original geschrieben von tim.brauer
EDIT:
Was ich gemeint habe war
PHP-Code:
while ($rowx = mysql_fetch_array($resultx))
{
$model[]=$rowx['MODEL'];
}
|
das ist doch schon richtig so. jetzt musst du nach der schleife nur noch die einzelnen arary-elemente ausgeben.
Zitat:
|
einzeln durchnummerierte Variablen füllen
|
was? wie? wozu? mehr infos?
gruß
peter
__________________
Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
Meine Seite
|

01-11-2007, 19:40
|
|
tontechniker
PHP Senior
|
|
Registriert seit: Jul 2005
Beiträge: 1.972
|
|
Wozu willst du die einzelnen Variablen haben? Für so etwas gibt es Arrays.
|

01-11-2007, 21:42
|
|
tim.brauer
Newbie
|
|
Registriert seit: Aug 2006
Beiträge: 26
|
|
Ähm, ohne mal auf meine Ausgangsfrage hinzuweisen, wenn Du nicht weißt, wofür ich die Variablen brauche, wie kannst Du denn dann wissen das es dafür Arrays gibt ?
Der Gedanke ist, für jedes Vorkommen eines Modells in den Daten der Datenbank einen Zähler für ebendieses eine Modell zu increasen. Daraus ergibt sich X-Modelle -> X-Zähler. Wenn Du mir sagst, wie ich diese Zähler realisieren soll, ohne das Array in einzelne Variablen aufzulösen dann  .
Und um die Frage, was ich eigentlich suche zu beantworten, lieber PHP-Desaster wäre es sicher hilfreich, sich einfach mal meine Frage durchzulesen.
Bitte entschuldigt den etwas angesäuerten Ton, is aber irgendwie nicht mein Tag heute...
|

01-11-2007, 21:54
|
TobiaZ
 Moderator
|
|
Registriert seit: Jan 2001
Ort: MUC und MGL, Germany
Beiträge: 34.188
|
|
Zitat:
|
Ähm, ohne mal auf meine Ausgangsfrage hinzuweisen, wenn Du nicht weißt, wofür ich die Variablen brauche, wie kannst Du denn dann wissen das es dafür Arrays gibt ?
|
Wahrscheinlich weiß er das, weil Variablen in der Form $wert1 bis $wertn immer der falsche Weg sind.  Arrays sind bei sowas einfach angesagt.
Zitat:
|
Der Gedanke ist, für jedes Vorkommen eines Modells in den Daten der Datenbank einen Zähler für ebendieses eine Modell zu increasen. Daraus ergibt sich X-Modelle -> X-Zähler. Wenn Du mir sagst, wie ich diese Zähler realisieren soll, ohne das Array in einzelne Variablen aufzulösen dann .
|
Niemand hat gesagt, dass du dir nicht die Werte in Zählervariablen speichern darfst. Nur dass diese Zählervariablen ein Zählerarray sein sollten.
Zitat:
|
Bitte entschuldigt den etwas angesäuerten Ton, is aber irgendwie nicht mein Tag heute...
|
Dann solltest du das Posten in Foren für den Heutigen Tag sein lassen. Schließlich bist du der jenige, der hier kostenlose Hilfe erwartet. Danke!
|
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
|
| Themen-Optionen |
|
|
| Thema bewerten |
|
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
|
PHP News
|