Problem mit E-Mail-Link und Suche

Hallo PHP-Experten!

Ich sollte mit PHP einen E-Mail-Link ausgeben und verzweifle wieder mal an der Syntax. Hier der Code:

 $pw = $HTTP\_POST['pw'];
 $w = $HTTP\_POST['Werbung'];
 $passwort=ocggast;
if ("w"=="") {
 echo "Formular bitte korrekt ausfüllen!";
}

if($w=="ja") {
 echo "Werbung unerwünscht!";
}
elseif($pw==$passwort){
echo "Login korrekt

";
echo "Mit diesem";
echo "[Link](%255C%2522http://www.ocg-goetzis.at/index.php?option=com_akobook&Itemid=80%255C%2522)";
echo "gehts weiter.";
 }
else {
 echo "Eingabe nicht korrekt 
";
**echo "Über diesen [Link](%255C%2522mailto%255C:[email protected]%255C%2522) kannst du das Passwort anfordern";**
 echo "[zurück](%255C%2522http://www.ocg-goetzis.at/index.php?option=com_akobook&Itemid=40%255C%2522)";
 }

 ?\>

Die Zeile, in der die Fehlermeldungen vorkommen habe ich markiert. Hier sind die Fehlermeldungen:

**Warning: Unexpected character in input: ‚‘ (ASCII=92) state=1 in /cdcv2/www/oldiefan/html/login.php on line 21

Parse error: syntax error, unexpected ‚:‘, expecting ‚,‘ or ‚;‘ in /cdcv2/www/oldiefan/html/login.php on line 21**

Die zweite Frage: Kann ich mit PHP eine Datei nach Werten durchsuchen lassen, die ich zuvor in ein Formular eingegeben habe? Ich stelle mir so was vor, wie die Suchfunktion der Microschrott-Programme. Datenbanken hauen nicht hin, da ich PHP-Niete bin und auch der Server bei Datenbanken überfordert ist.

Gruß und vielen Dank für die Hilfe!

Alex

lass Dich nicht von Der Zeilenangabe irritieren.
Meiner Meinung nach liegt der Fehler hier:

$passwort=ocggast;

Du musst mit " machen:
$passwort=„ocggast“;

Grüsse Munich

Die zweite Frage: Kann ich mit PHP eine Datei nach Werten
durchsuchen lassen, die ich zuvor in ein Formular eingegeben
habe?

Ja, das geht.
Du könntest es z.B. so machen:

$handle = fopen("/tmp/inputfile.txt", "r"); // datei öffnen
while (!feof($handle)) {
 $buffer = fgets($handle, 4096); // aus datei lesen
 // prüfen, ob der Suchstring in dieser Zeile ist
 if (strpos($buffer, $\_POST['inputfeld\_name']) !== false) echo "
Suchstring gefunden in:
".$buffer;
}
fclose($handle);

Gruss,
Janosh

Hallo Munich!

Die Übertragung des Wertes klappt schon mal, aber jetzt kommt das nächste Problem auf mich zu: Egal was ich eingebe, es kommt immer die Meldung, dass ich ein falsches Passwort eingegeben hätte. Dieser Code wird aber richtig ausgeführt. Hier der Link zum Formular (Passwort alex)

http://www.ocg-goetzis.at/index.php?option=com_conte…

Der Code des Scripts schaut so aus (ich habe ihn ein Bisschen verändert):

 $pw = $HTTP\_POST['pw'];
 $w = $HTTP\_POST['Werbung'];
 $passwort='alex';

if($w=="ja") {
 echo "Werbung unerwünscht!";
}
elseif($pw==$passwort){
echo "Login erfolgreich";
echo "
";
echo "Mit diesem ";
echo "[Link](%255C%2522http://www.ocg-goetzis.at/index.php?option=com_akobook&Itemid=80%255C%2522)";
echo " gehts weiter.";
 }

else
echo "Login nicht möglich. Du hast ein falsches Passwort verwendet. Schreibe ein Mail an [Alex Winter](%255C%2522mailto%255C:alex59%[email protected]%255C%2522) um das Passwort anzufordern!";

 ?\>

Danke für deine Hilfe! Alex

else
echo „Login nicht möglich. Du hast ein falsches Passwort
verwendet. Schreibe ein Mail an Alex Winter um
das Passwort anzufordern!“;

Du musst hier auch geschweifte Klammern setzen…
wenn Du nur das else echo schreibst dann muss es zwingend in der gleichen Zeile stehen.

Hallo!

Ich habe das jetzt geändert, es funktioniert aber leider noch nicht.

Gruß Alex

hallo alex,

interessant waere es zu wissen was auf deiner Seite ankommt. das kannst du herausfinden indem du mal alle benutzTen variablen ueber einen echo ausgibst. (vielleicht ist irgendwo was mit den geposteten daten nicht korrekt)
val_of( $w);
val_of( $password);
val_of( $_POST[„passwort“]);

lass die das mal ausgeben, dann wirst du den fehler sicher selber finden.

function val\_of($bla)
{
 echo "($bla)
";
 return 1;
}

um variablen und arrays und Ihre werte besser debuggen zu koennen gibt es auch die aeusserst nuetzliche funktion var_dump($variable); am bestenm du liest deren sinn und unsinn bei php.net nach.

viel erfolg und gruss josh

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]