Shop-Hilfe.com
-


Hinweise


Antwort
 
LinkBack Themen-Optionen Thema durchsuchen Thema bewerten
Alt 22.05.2006, 00:59   #1
TP-Member
 
Registriert seit: Apr 2004
Ort: Köln - augenblicklich missionarische Tätigkeit im bayrischen Ausland
OnkelLocke ist auf einem guten Weg
Question

foreach-schleife + mysql zerhackt


Sooo, hallo mal wieder und weils so schön war, ne blöde frage obendrauf

Ich lese aus ner MySQL was aus, sobald ich eine foreach-schleife benutze, zerhackstückelt er mir alles...
Selbst bei einer einfachen Dummy-Datenbank macht er böse Sachen - Damit ihr seht was los ist, mal kurz die Codes...

Die SQL-Tabelle:
Code:
-- Tabellenstruktur für Tabelle `test`
-- 

CREATE TABLE `test` (
  `id` int(5) unsigned zerofill NOT NULL auto_increment,
  `name` varchar(20) NOT NULL default '',
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=6 ;

-- 
-- Daten für Tabelle `test`
-- 

INSERT INTO `test` VALUES (00001, 'bla 1');
INSERT INTO `test` VALUES (00002, 'bla 2');
INSERT INTO `test` VALUES (00003, 'bla 3');
INSERT INTO `test` VALUES (00004, 'bla 4');
INSERT INTO `test` VALUES (00005, 'bla 5');

Meine PHP-Datei:
PHP-Code:
<?php
mysql_connect
($server,$user,$pass);

mysql_select_db("ruhig");

$sql mysql_query("SELECT id, name FROM test LIMIT 0, 30");


$data    =    mysql_fetch_array($sql);
foreach (
$data as $werte) {
    echo 
$werte['id'].' '.$werte['name'].'<br>';
}
?>


Soweit so gut, das ist so einfach, wo steckt denn dann der Fehler???
Der Aufruf der test.php erzeugt folgende Ausgabe:
Code:
0 0<br>0 0<br>b b<br>b b<br>
Ich sehe einfach nicht, was da los ist, es sind nicht die ersten zeichen, es sind 4 anstatt 5 Ausgaben.......
Ich versteh einfach nicht, was da los ist, ganz zu schweigen vom Problem, eine einfache foreach-schleife mit selber definiertem Array funktioniert astrein...Gebe ich nur den $data[name]-wert aus, gibt er mir den Datensatz Nr.1 (sql-id=001) aus....aber den wenigstens richtig...
Wenn ich den query mit mysql_fetch_assoc verarbeite, ist die Ausgabe "0 0<br>b b<br>"...
Und ich verstehs einfach nicht...



Wäre jemand wohl so freundlich, mir zu erklären, was da los ist??
Ich dreh mich seit gut 3 stunden im Kreis und schlag Purzelbäume, glaube das ich bisschen bescheuert bin...und das alles, während ich mit meinen Knickohren schlackere, 'türlich


Vielen, vielen Dank schonmal im Voraus,

Gruß,
Der nette Onkel von nebenan....

Geändert von OnkelLocke (22.05.2006 um 01:19 Uhr).
OnkelLocke ist offline   Mit Zitat antworten


Alt 22.05.2006, 03:11   #2
TP-Member
 
Registriert seit: Apr 2004
Ort: Köln - augenblicklich missionarische Tätigkeit im bayrischen Ausland
OnkelLocke ist auf einem guten Weg

problem behoben - doch doof geblieben


Also, die mit ner while-schleife funktionierts - eben hab ichs schonmal probiert, aber da hab ich offensichtlich was anders gemacht - fragt mich bitte nicht was

Nja, das Problem ist jedenfalls erledigt - ich ändere das in eine Frage...

Ich sehe öfters mal, dass while benutzt wird - warum eigentlich ??
foreach ist doch genau dafür da, zum array durchlaufen.... oder täusch ich mich??


Erleuchtet mich, oh ihr PHP-Wais...ääähhh....Weisen


Gruß,
Tobi
OnkelLocke ist offline   Mit Zitat antworten
Alt 22.05.2006, 10:32   #3
TP-Special Mod
 
Benutzerbild von steffenk
 
Registriert seit: Feb 2005
Ort: Haan / NRW
steffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine User
das kommt immer auf den Fall an.
foreach benutzt man i.d.R. zum Durchlauf von Arrays.
While benutzt man, wenn ein Vorgang solange laufen soll, wie eine Bedingung erfüllt ist, z.B. Auslesen von Datensätzen solange, wie welche vorhanden sind.

In dem Fall nutzt man While, da die Abbruchbedingung direkt am Anfang kommt:

PHP-Code:
while($row=mysql_fetch_assoc($res)) { ... 
__________________

Typo3 · MySQLDumper · dislabs
·
manche Mühlen mahlen schneller ...
"Ich habe Rücken"
Horst Schlämmer
steffenk ist offline   Mit Zitat antworten
Antwort

  Aktuelles Thema
  TP Hilfe Forum > Web-Editoren & Coding > Traum-Dynamik
foreach-schleife + mysql zerhackt foreach-schleife + mysql zerhackt
« globale externe variable !? | [php & mysql] insert, update und delete »

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 19:10 Uhr.

Powered by: vBulletin Version 3.7 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd. / Search Engine Friendly URLs by vBSEO 3.2.0 ©2008, Crawlability, Inc.
Traum-Projekt.com | Suchen | Archiv | Impressum | Kontakt | | | Nach oben |



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67