foreach liefert immer selbe ergebnisse

Hier könnt Ihr fragen zu Problemen mit Sql (MySql) in Verbindung mit PHP stellen. Es können fragen zu SQL Anweisungen und/oder PHP Mysql Funktionen gestellt werden.

foreach liefert immer selbe ergebnisse

Beitragvon achim89 am Do, 21:58:25 21.05.09

hallo erstmal

seit kurzem wage ich mich an php, jedoch bereitet es mir doch mehr probleme als gedacht
ich habe ein fehler bei meiner foreach schleife, weiß aber nicht worin er liegt

in meiner datenbank speichere ich uploads anhand des dateinamens (zeitstring) den typ und die benutzerid die uploadedte
es tauchen in meiner datenbank mehrere user mit je mehreren files auf
deshalb mache ich
  1. $abfrage = "select * from files where user = '".$_SESSION["id"]."'";
  2.   $ergebnis = mysql_query($abfrage);
  3.   $dsatz = mysql_fetch_assoc($ergebnis);


das heißt ja, frage alles ab, bei dem der datensatz beim user der seiner ID ist

und später
  1. foreach($dsatz as $file)
  2.   {
  3.     /* code ausgeschnitten */
  4.      
  5.     echo "    <td><center>"; fct_preview($dsatz["type"], $dsatz["filename"], $dsatz["time"]);
  6.     echo "        </center></td>";
  7.     echo "    <td><center>"; fct_stamp_to_string($dsatz["time"]);
  8.     echo "        </center></td>";
  9.     echo "    <td><center>";
  10.     echo          $dsatz["size"]." Kb</center></td>";
  11.     echo "    <td><center>Link zum verschicken:";
  12.     echo "        <br><input value='***URL****/download.php?stamp=".$dsatz["user"]."&time=".$dsatz["time"]."'></td>";
  13.     echo "    <td><center>Anzahl der Downloads:";
  14.     echo "        <br>".$dsatz["downloads"]."</center></td>";
  15.     echo "    <td><center><a href='delete.php?file=".$dsatz["time"]."'>";
  16.                   fct_show_icon("delete.png");
  17.     echo "        </center></td>";
  18.     echo "</tr>";
  19.   }


jedoch listet mir, auch wenn nur 1 passender datensatz besteht, immer 5 identische ergebnisse
achim89
Newbi
 
Beiträge: 2
Registriert: Do, 21:50:03 21.05.09

Re: foreach liefert immer selbe ergebnisse

Beitragvon Marcel am Fr, 08:16:03 22.05.09

Also die SQL Anweisung sieht erstmal ok aus. Vielleicht mal prüfen ob $_SESSION['id'] auch den richtigen Wert enthält. Ansonsten halte ich eine while() Schleife hier besser als foreach()

Beipsiel:

  1. while($dsatz = mysql_fetch_assoc($ergebnis))
  2. {
  3.     echo  $dsatz["spalten_name"];
  4. }
MfG
Marcel
Marcel
Member
 
Beiträge: 542
Registriert: Di, 16:13:41 3.01.06

Re: foreach liefert immer selbe ergebnisse

Beitragvon achim89 am Fr, 09:05:17 22.05.09

VIELEN VIELEN dank
du hast so recht
meine abfrage liefert ja auch ne ganze reihe an ergebnissen (>.<)

while war genau das richtige
danke
achim89
Newbi
 
Beiträge: 2
Registriert: Do, 21:50:03 21.05.09

Zurück zu PHP mit Sql



cron