Gegen Bilderklau - Das Original (https://www.gegen-bilderklau.net/index.php)
- Design, Website, Copyright (https://www.gegen-bilderklau.net/board.php?boardid=80)
--- Homepagehilfe (https://www.gegen-bilderklau.net/board.php?boardid=27)
---- Homepagehilfe - Archiv (https://www.gegen-bilderklau.net/board.php?boardid=139)
----- [PHP & MySQL] Eintragen(Anmelden) nur ein mal (https://www.gegen-bilderklau.net/thread.php?threadid=135314)


Geschrieben von Startpost-Retter am 11.06.2008 um 18:04:

  Eintragen(Anmelden) nur ein mal

Hi ihr!

Hoffentlich kann mir jemand helfen...
Nämlich wollte ich eigentlich einen Code schreiben für meine Turnierseite, dass sich jeder pro Disziplin und Klasse nur einmal anmelden kann. Natürlich kann ich dabei nicht nur nach Namen oder nur nach Hof geben, da es sicher öfters den selben Namen auf verschiedenen Höfen gibt.

Daher wollte ich eigentlich, dass eben der Name gewählt wird, dann eben von welchem Hof und anschließend getestet, ob das alles schon einmal so zusammen vorhanden ist.

Wenn nicht, soll die Anmeldung/Eintragung stattfinden, ist die Person mit diesem Namen von diesem auf in dieser Disziplin und Klasse schon angemeldet, so kann es eben kein zweites mal passieren.

Diesen ersten Schritt habe ich über 'hässliche' Wege geschafft... das Problem ist nur, dass wenn sich jetzt jemand mit dem selben Namen von einem anderen Hof anmelden möchte... schlicht weg nichts passiert....

Vielleicht hat ja auch einfach jemand eine gute Seite, wo ich das nachlesen kann und damit meine ich nicht selfphp ... Danke schon mal im Voraus großes Grinsen

Liebe Grüße
Cantara

EDIT:
Mein bisheriger Code, der so ja leider nicht funktioniert...
php:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
$sql "SELECT * FROM turniere WHERE name='$name' AND hof='$hof' AND disziplin='$dis' AND klasse='$kla'";
   $result mysql_query($sql);
   $anzahl mysql_num_rows($result);
   while ($row mysql_fetch_assoc($result))
{
   if($anzahl!=1)
   {
   $eintrag "INSERT INTO `turniere` (`name` , `email` , `datum` , `hof` , `hofadresse` , `pferd`, `disziplin`, `klasse`)
   VALUES ('$name', '$email', '$datum', '$hof', '$hofad', '$pferd', '$dis', '$kla')";
   $eintragen mysql_query($eintrag);
   echo "<b>Anmeldung erfolgreich</b><br>Viel Erfolg auf dem Turnier!<br><a href="javascript:%20history.back(-2)" target="_self">Zurück</a>";
   }
   else
   {
   echo "<b>Fehler</b><br>Du bist bereits angemeldet!<br> <a href="javascript:%20history.back(-2)" target="_self">Zurück</a>";
   }
}



Geschrieben von .Maybe am 12.06.2008 um 14:16:

 

Also du meinst, es springt immer in den else-Teil?
Lass dir mal $anzahl ausgeben um zu schauen, ob es daran liegt. Und wenn es wirklich nicht 1 ist, versuch die Bedingung mal so zu schreiben:
if($anzahl != "1")
So hab ichs gelernt (die Anführungszeichen um Eins müssten aber auch weggelassen werden können).


Forensoftware: Burning Board, entwickelt von WoltLab GmbH