PHP Forum

PHP Forum (http://www.selfphp.de/forum/index.php)
-   PHP Grundlagen (http://www.selfphp.de/forum/forumdisplay.php?f=12)
-   -   fehler gefunden, aber nicht welcher counter falsch gesetzt (http://www.selfphp.de/forum/showthread.php?t=16420)

selbstlerner 23.03.2007 04:26:32

fehler gefunden, aber nicht welcher counter falsch gesetzt
 
hallo ersteinmal,
ich habe zwar den fehler gefunden, weis aber nicht warum das ein fehler war.

hier die fehlermeldung:
Hallo ersteinmal,
ich habe erst die foreach schleife gesetzt und dann den Counter, es kam dabei zur folgenden fehlermeldung:

key1: Die von Ihnen gewählte Sorte Jonagold
key1: Ihre Bestellnummer: TT1911
key1: Ihr Bearbeiter: Stefan Schmidt
key1: Die bestellte Menge von: 23 kg
key1: Ausgabe des Preises innerhalb einer Funktion: 34.5 €
key1: Ausgabe des Preises außerhalb der Funktion:

=> die ursache, war:
den counter $i =1;
habe ich nach der foreach - schleife gesetzt. => muss aber for die foreach - schleife gesetzt werden, warum?

fehler:
<?
$zeiger= fopen("user.txt", "r");
if($zeiger != false) {
$ganz= file("user.txt");
foreach($ganz as $zeile) {
$i =1;
echo 'key' .$i++. ': ';
echo $zeile .'<br>';
}}
else {
echo 'Dat war nix';
}
?>
=> wieso muss der counter vor der foreach - schleife gesetzt werden?

vielen herzlichen dank für eure mühe!
xampp

Andes 23.03.2007 10:12:02

AW: fehler gefunden, aber nicht welcher counter falsch gesetzt
 
Sehe zwar in deiner Erklärung nicht durch. Was nun dein Problem war.
Wenn $i die Einträge zählen soll muss halt $i = 1 vor die Schleife, da sonst $i bei jedem Durchlauf wieder auf 1 gesetzt wird.

selbstlerner 24.03.2007 17:01:28

AW: fehler gefunden, aber nicht welcher counter falsch gesetzt
 
das sehe ich anders, danke für die antwort.
das heißt also: dass, der counter vor der schleife gesetzt werden muss, da bei jedem durchlauf (=> Wert ausgeben) der Counter auf den Startpunkt 1 gesetzt wird und nicht , wie von mir gewünscht von 1 bis 6 beispielsweise die werte durchzählen soll und die keys ausgibt?

=> auf gut deutsch, der grund war, der counter wurde nach jedem durchlauf auf eins gesetzt und konnte folgedessen nicht nach jedem Durchlauf (=> werteausgabe) den index des wertes aus dem array eine Nummer geben.
1. wert => key1
2. wert => key2

=> habe ich das so richtig verstanden?
=> dankschön
=> xampp


Alle Zeitangaben in WEZ +2. Es ist jetzt 09:25:35 Uhr.

Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.