Seite 1 von 2

If file_exist

Verfasst: 20.10.2010 10:04
von Snowstone de
Guten Tag liebe Community,

ich bin gerade dabei eine Seite zu machen, läuft alles ganz gut. Jetzt hab aber mit dem Registrierformular angefangen und hab jetzt ein Pro :evil: .
Die Seite speichert für jeden neu angelegten Benutzer eine Datei auf dem Server. Die Datei sieht dann z.B so aus "test@test.de.txt". Jetzt wollte ich bevor er die Datei erstellt gucken ob es die Datei, also die E-Mail, schon gibt. Ich hab folgenden Code geschrieben:

Code: Alles auswählen

<?php
$mail = $_POST["mail"];
$vorname = $_POST["vorname"];
$nachname = $_POST["nachname"];
$geburtsdatum = $_POST["geburtsdatum"];
$wohnort = $_POST["wohnort"];
$land = $_POST["land"];
$passwort = $_POST["passwort"];
$text = "$vorname
$nachname
$mail
$passwort
$geburtsdatum
$wohnort
$land";

if (file_exist("C:\users\\$mail.txt");
{
echo "<center><font color="#FF0000">Es hat sich schon jemand mit dieser E-Mail angemeldet.</font>";
} 
else {
$datei = fopen("C:\users\\$mail.txt","w+");
}
rewind($datei);
fwrite($datei, $text);
fclose($datei);

?>
Und ich bekomme immer folgenden Fehler :
Parse error: syntax error, unexpected ';' in C:\xampp\htdocs\images\register_schritt2.php on line 24

Währe nett wenn ihr mal ausschau nach Fehlern haltet oder ein paar Tipps gibt. Bin übrings noch Anfänger.

Re: If file_exist

Verfasst: 20.10.2010 11:07
von posaunen
Nimm mal

if (file_exist("C:\users\\$mail.txt")

statt

if (file_exist("C:\users\\$mail.txt");

Re: If file_exist

Verfasst: 20.10.2010 11:09
von Snowstone de
Bekomme jetzt diesen Fehler:
Parse error: syntax error, unexpected '{' in C:\xampp\htdocs\images\register_schritt2.php on line 26

Re: If file_exist

Verfasst: 20.10.2010 11:13
von posaunen
Snowstone de hat geschrieben:Bekomme jetzt diesen Fehler:
Parse error: syntax error, unexpected '{' in C:\xampp\htdocs\images\register_schritt2.php on line 26
Klammer vegessen?

Zeig mal den aktuellen Quelltext, so wie er tatsächlich eingebaut ist.

Re: If file_exist

Verfasst: 20.10.2010 11:18
von Snowstone de

Code: Alles auswählen

<?php

$mail = $_POST["mail"];

$vorname = $_POST["vorname"];

$nachname = $_POST["nachname"];

$geburtsdatum = $_POST["geburtsdatum"];

$wohnort = $_POST["wohnort"];

$land = $_POST["land"];

$passwort = $_POST["passwort"];

$text = "$vorname
$nachname
$mail
$passwort
$geburtsdatum
$wohnort
$land";

if (file_exist("C:\shape\users\\$mail.txt")
{
echo "<center><font color="#FF0000">Es hat sich schon jemand mit dieser E-Mail angemeldet.</font>";
} 
else {
$datei = fopen("C:\shape\users\\$mail.txt","w+");
}

rewind($datei);

fwrite($datei, $text);

fclose($datei);


?>

Re: If file_exist

Verfasst: 20.10.2010 11:21
von wolfman24
Anstelle von

Code: Alles auswählen

echo "<center><font color="#FF0000">Es hat sich schon jemand mit dieser E-Mail angemeldet.</font>";
mal

Code: Alles auswählen

echo '<center><font color="#FF0000">Es hat sich schon jemand mit dieser E-Mail angemeldet.</font>';
probieren, das mit den Hochkommas innerhalb der Hochkommas kann nicht klappen. Ansonsten die " im Text mit \" ersetzen. Also so

Code: Alles auswählen

echo "<center><font color=\"#FF0000\">Es hat sich schon jemand mit dieser E-Mail angemeldet.</font>";

Re: If file_exist

Verfasst: 20.10.2010 11:24
von Snowstone de
Noch immer der gleiche Fehler.

Re: If file_exist

Verfasst: 20.10.2010 11:34
von posaunen
Snowstone de hat geschrieben:Noch immer der gleiche Fehler.
Das ist eine andere Baustelle. Dir hat eine Klammer gefehlt, siehe unten. Anführungszeichen habe ich auch bereinigt.

if (file_exists("C:\shape\users\\$mail.txt")) {
echo "<center><font color=\"#FF0000\">Es hat sich schon jemand mit dieser E-Mail angemeldet.</font>";
}
else {
$datei = fopen("C:\shape\users\\$mail.txt","w+");
}


EDIT: Der Funktionsname war auch nicht ganz richtig.

Re: If file_exist

Verfasst: 20.10.2010 11:37
von Charlie_M
Zudem was posaunen sagt kommt noch:

Code: Alles auswählen

$text = "$vorname
$nachname
$mail
$passwort
$geburtsdatum
$wohnort
$land";
Das soll doch ein Array sein? Dann deklarier es als solches:

Code: Alles auswählen

$text = array(
    $vorname,
    $nachname,
    $mail,
    $passwort,
    $geburtsdatum,
    $wohnort,
    $land");
Sollte es ein einziger String werden muss dazwischen jeweils ein Punkt:

Code: Alles auswählen

$text = "$vorname.$nachname.$mail.$passwort.$geburtsdatum.$wohnort.$land";
Als String machts so aber keinen Sinn, ausser man verwendet z.B. explode() und implode()

Re: If file_exist

Verfasst: 20.10.2010 17:30
von Snowstone de
Vielen Dank läuft jetzt. :grin:
Sollte kein Array sein. Aber gut mitgedacht.

Noch eine Frage:
13: if ($mail == ""); {
14: echo '<center><font color="#FF0000">Du hast keine E-Mail Adresse angegeben.</font>';
15: $fehler = "1";
16: }

Und der Fehler:
Parse error: syntax error, unexpected T_IF, expecting ',' or ';' in C:\xampp\htdocs\shape\images\register_schritt2.php on line 13
:o