Problem mit Poll-Script

_voodoo

Erfahrenes Mitglied
Hallöchen

Also ich versuche mir ein Pollscript mit unbegrenzten Antwortmölichkeiten zu basteln. Leider gibts ein kleines, für mich unverständliches Problem :(

Ich habe zwei Tabellen "pollq" für die Fragen und "polla" für die Antworten.

pollq:

Code:
+---------+
| ID      |
+---------+
| frage   |
+---------+
| votes   |
+---------+
| datum   |
+---------+

polla:

Code:
+---------+
| ID      |
+---------+
| antwort |
+---------+
| count   |
+---------+
| f_id    |
+---------+

Ich denke bis auf f_id erklärt sich hiert alles selber. Die f_id soll die ID der frage sein - um die Antwort der Frage zuzuordnen.

Ich lese nun die Frage wie folgt aus:

PHP:
$get = mysql_query("SELECT * FROM pollq ORDER BY ID DESC LIMIT 1");
$poll = mysql_fetch_assoc($get);
$f_id = $poll['ID'];

Funktioniert auch soweit, die richtige ID wird pübergeben ...

PHP:
$get =  mysql_query("SELECT * FROM polla WHERE f_id = '$f_id'");
while($antw = mysql_fetch_assoc($get))
{
echo '<input type="radio" name="antwort" value="'.$antw[ID].'">'.$antw[antwort]; 
}

Jetzt das Problem: Wenn ich diesen Code ausführe gibts er mir nicht die fünf gespeicherten Antwortmöglichkeiten (mit f_id ="1") aus der DB an, sondern gibt die letzte immer und immer wieder aus ...

link : http://www.planetvoodoo.de/test/poll.php
 
Zuletzt bearbeitet:
Hallo,
versuche mal folgende Zeile zu ersetzen:

PHP:
while($antw = mysql_fetch_assoc($get))

Mit diesem hier:

PHP:
while($antw = mysql_fetch_array($get))
 
Hallo,
von welchem typ sind die ID's und die f_id?
Falls sie ein Zahlentyp sind, würde ich diese Zeile:
PHP:
$get =  mysql_query("SELECT * FROM polla WHERE f_id = '$f_id'");
umschreiben in diese:
PHP:
$get =  mysql_query("SELECT * FROM polla WHERE f_id = $f_id");
 
die Feldnamen eines Array müssen in Anführungszeichen und wie drvj
schon sagte wenn die ID numerisch keine '
PHP:
$get =  mysql_query("SELECT * FROM polla WHERE f_id = $f_id");
while($antw = mysql_fetch_assoc($get))
{
echo '<input type="radio" name="antwort" value="';
echo $antw["ID"];
echo '">';
echo $antw["antwort"]; 
}

p.s.: du hast es sogar einmal richtig bei deinen post oben

PHP:
$f_id = $poll['ID'];
 
Zuletzt bearbeitet:
Das ich keine ' habe kann nicht der Fehler, ich hab bisher nur sehr selten diese ' oder " in den Array geschrieben und bisher haben alle meine Scripte funktioniert. Daher können die ' / " keine Ursache für die Falsche Ausgabe sein!

Damit es aber nicht heißt ich bin dickköpfig und ich will nicht dass man mir hilft:

PHP:
$get = mysql_query("SELECT * FROM polla WHERE f_id = $f_id ORDER BY ID DESC"));

while($antw = mysql_fetch_assoc($get)
{
echo '<input type="radio" name="antwort" value="'.$antw['ID'].'">'.$antw['antwort']; 
}

Funktionert auch nicht

//edit: Hab es behoben bekommen, ich weiss zwar noch nicht as der Fehler ist, aber nachdem ich den else Teil der if Schleife (in der sich der oben gen. Code befindet) entfernt habe funktioniert es einwandtfrei
 
Zuletzt bearbeitet:
Zurück