Werte aus assoziativem Array auslesen
ingobar
- php
Guten Morgen,
ich hätte gerne eine solche Schleife umgesetzt, finde aber in keinem Tutorial eine passende Antwort:
foreach($_GET as $eintrag) {
echo $eintrag;
echo "<br>";
}
Rufe ich die Datei mit index.php?titel=Begruessung , so bekomme ich
Begruessung
angezeigt. Ich hätte aber gerne auch "titel" als Name des Elements angezeigt. Wie kann ich darauf zugreifen?
Hi,
ich hätte gerne eine solche Schleife umgesetzt, finde aber in keinem Tutorial eine passende Antwort:
warum suchst Du ein Tutorial, wenn es eine Dokumentation gibt?
Cheatah
warum suchst Du ein Tutorial, wenn es eine Dokumentation gibt?
Weil ich die noch nicht kannte.
Jetzt habe ich das Beispiel benutzt und mit deren Beispiel klappt es auch. Nur für meinen Fall scheint es nicht zu gehen:
foreach($_GET as &k => $v) {
echo "$k = $v <br>";
}
Ist $_GET kein assoziatives Array? Ich meine mich zu erinnern, das mir jemand so etwas schrieb.
Wäre $_POST denn eines?
Ach ja, wenn du hierauf antwortest, könntest du dann noch meinen Beitrag weiter unten mal anschauen? Da ging es um die Übermittlung von Daten per POST oder GET. Noch kann ich problemlso was ändern, da ich erst eine Maske habe und vor allem noch an der passenden DB-Struktur sitze.
das sollte normal schon gehen, wenn Du Deine Schleife aber genauso geschriben hast
foreach($_GET as &k => $v) {
echo "$k = $v <br>";
}
dann gibts nen Fehler. So muss es aussehen (hast in der ersten zeile &k statt $k geschrieben):
foreach($_GET as $k => $v) {
echo "$k = $v <br>";
}
Grüße
Bezkeroon
&k statt $k geschrieben):
Ach ja, manchmal ist man einfach blind. Und ich habe wohl noch keinen Blick für die typischen Fehler.
Wieso hatte ich eigentlich keine Fehlermeldung? Ich habe extra
error_reporting(E_ALL);
in die erste Zeile geschrieben?
hi,
Wieso hatte ich eigentlich keine Fehlermeldung? Ich habe extra
error_reporting(E_ALL);
in die erste Zeile geschrieben?
Kommt bei mir mit deinem Code sofort,
Parse error: syntax error, unexpected '&', expecting T_VARIABLE or '$' in [...]
Kontrolliere mal per phpinfo(), ob display_errors vielleicht auf off steht.
gruß,
wahsaga
Kontrolliere mal per phpinfo(), ob display_errors vielleicht auf off steht.
Guter Tipp. Bei mir steht es auf OFF. Wie schalte ich es ein?
hi,
Kontrolliere mal per phpinfo(), ob display_errors vielleicht auf off steht.
Guter Tipp. Bei mir steht es auf OFF. Wie schalte ich es ein?
php.ini, .htaccess, ini_set()
(Letzteres weniger empfehlenswert, weil diese Anweisung im Script bei fatal errors auch gar nicht zur Ausführung kommt, diese deshalb immer noch nicht angezeigt werden können.)
gruß,
wahsaga
php.ini, .htaccess, ini_set()
Unter OSX gibt es nur eine php.ini.default und dort stand der Wert auf ON. Jetzt frage ich mich natürlich, woher kam die Anzeige OFF und zweitens: Waum bekomme ich inzwischen gar keine Anzeige mehr? Meine Anwendung mit php läuft problemlos, aber die info.php geht nicht mehr. Ich bekomme eine völlig leere Anzeige.
Jetzt weiß ich auch nicht mehr weiter. Vielleicht sollte ich ein neues Thema aufmachen und mal fragen, wer sich hier mit der Konfiguration von php unter OSX auskennt.
echo $begrüßung;
php.ini, .htaccess, ini_set()
Unter OSX gibt es nur eine php.ini.default und dort stand der Wert auf ON. Jetzt frage ich mich natürlich, woher kam die Anzeige OFF und zweitens: Waum bekomme ich inzwischen gar keine Anzeige mehr? Meine Anwendung mit php läuft problemlos, aber die info.php geht nicht mehr. Ich bekomme eine völlig leere Anzeige.
phpinfo() sollte dir Auskunft darüber geben. Lies aufmerksam den oberen Teil, da sind möglicherweise mehrere Stellen angegeben, wo Konfigurationsdateien gesucht werden. Es steht da auch genau, welche Dateien berücksichtigt wurden. Diese Dateien bilden den Wert, der in der rechten Spalte unter Master Value angegeben ist. Der Wert in der linken Spalte (Local Value) kann durch Einstellungen in der .htaccess oder durch die Anwendung von ini_set() (und einigen anderen Funktionen) geändert worden sein.
Jetzt weiß ich auch nicht mehr weiter. Vielleicht sollte ich ein neues Thema aufmachen und mal fragen, wer sich hier mit der Konfiguration von php unter OSX auskennt.
Nicht nötig. Es sollte sich alles ohne spezielle Systemkenntnis mit Hilfe der phpinfo() ermitteln lassen.
echo "$verabschiedung $name";
phpinfo() sollte dir Auskunft darüber geben. Lies aufmerksam den oberen Teil, da sind möglicherweise mehrere Stellen angegeben, wo Konfigurationsdateien gesucht werden. Es steht da auch genau, welche Dateien berücksichtigt wurden. Diese Dateien bilden den Wert, der in der rechten Spalte unter Master Value angegeben ist. Der Wert in der linken Spalte (Local Value) kann durch Einstellungen in der .htaccess oder durch die Anwendung von ini_set() (und einigen anderen Funktionen) geändert worden sein.
So, ich habe jetzt das phpinfo() durchlaufen lassen. Dort stand der Pfad zur php.ini. In dieser Datei habe ich das display_errors auf On gestellt - ohne Auswirkung.
In der Datei war aber auch alles auskommentiert. Das ist doch nicht normal, oder?
Dann gibt es noch einen ganzen Haufen additional .ini files, die wohl für mysql etc. zuständig sind. Ist da eine noch für mich relevant?
Ich habe ürbigens mit set_ini('display_errors',On) den lokalen Wert auf On setzen können. Die .htaccess finde ich im Moment nicht, da ich nicht weiß, wo der Apache unter OSX installiert ist.
echo $begrüßung;
So, ich habe jetzt das phpinfo() durchlaufen lassen. Dort stand der Pfad zur php.ini. In dieser Datei habe ich das display_errors auf On gestellt - ohne Auswirkung.
Auch in der "Master Value"-Spalte hat sich nichts geändert? Und den Apachen hast du nach der Änderung neu gestartet? Die php.ini wird nur einmalig beim Start gelesen.
Dann gibt es noch einen ganzen Haufen additional .ini files, die wohl für mysql etc. zuständig sind. Ist da eine noch für mich relevant?
Im Prinzip ja, wobei nicht zu vermuten ist, dass darin die Einstellung zu display_errors geändert wird.
Ich habe ürbigens mit set_ini('display_errors',On) den lokalen Wert auf On setzen können. Die .htaccess finde ich im Moment nicht, da ich nicht weiß, wo der Apache unter OSX installiert ist.
.htaccess ist eine Verzeichnis-Konfigurationsdatei. Du findest sie in dem Verzeichnis in dem sie wirken soll. Außerdem ist da die Syntax eine andere als in der php.ini.
echo "$verabschiedung $name";
Erst einmal danke für deine Mühe. Ich hatte den Fehler begangen nicht weit genug gegangen zu sein. Später kam dann noch ein Zeile in der display_errors wieder ausgeschaltet wurde.
Jetzt läuft alles wunderbar - mit Fehleranzeige. Danke für deine ausführlichen Tipps.
.htaccess ist eine Verzeichnis-Konfigurationsdatei. Du findest sie in dem Verzeichnis in dem sie wirken soll. Außerdem ist da die Syntax eine andere als in der php.ini.
Das schaue ich mir mal genauer an. Vielleicht brauche ich es noch einmal.
PS Da ich mit den Begriffen su und sudo Probleme hatte (wie viele andere wahrscheinlich auch), war ich so frei und habe daraus eine neue Frage gemacht.