Chris: DB auf Inhalte überprüfen

Hallo!
Ich hab folgendes Problem. Erst einmal mein Skript, damit ihr seht, um was es geht:
$name = "Chris";

$check_name = mysql_query("SELECT * FROM namen WHERE name='$name' ");
$count = mysql_num_rows($check_name);

if ( $count >= 1){
echo "Bitte wählen Sie nen anderen Namen";
}else{
echo "Ok, alles paletti";}

So, also das soll überprüfen, ob es den Namen Chris schon in der DB gibt. Das klappt auch wunderbar. Jetzt soll das ganze nur ein Teil einer }elseif{..}-Schleife sein. Bloß ich weiß nicht,  wie ich das einfügen soll. Habt ihr einen Vorschlag.
Ich wäre euch sehr dankbar :-9

  1. Moin Chris

    $check_name = mysql_query("SELECT * FROM namen WHERE name='$name' ");
    $count = mysql_num_rows($check_name);

    Select * ist nicht gut, such dir einen Feldnamen aus.

    if ( $count >= 1){

    Pedantisch, aber hier tut es auch != 0

    echo "Bitte wählen Sie nen anderen Namen";
    }else{
    echo "Ok, alles paletti";}

    Soweit OK.

    So, also das soll überprüfen, ob es den Namen Chris schon in der DB gibt. Das klappt auch wunderbar. Jetzt soll das ganze nur ein Teil einer }elseif{..}-Schleife sein. Bloß ich weiß nicht,  wie ich das einfügen soll. Habt ihr einen Vorschlag.

    Hier wird deine Frage unklar. *SCHULTERZUCKEN*

    regds
    Mike

    1. So, also das soll überprüfen, ob es den Namen Chris schon in der DB gibt. Das klappt auch wunderbar. Jetzt soll das ganze nur ein Teil einer }elseif{..}-Schleife sein. Bloß ich weiß nicht,  wie ich das einfügen soll. Habt ihr einen Vorschlag.

      Hier wird deine Frage unklar. *SCHULTERZUCKEN*

      OK, haste recht! Also ich hab ein Formular, in dem Anwenderdaten eingegeben werden sollen. Dabei wird mehrmals überprüft, ob irgendwelche Angaben fehlern oder fehlerhaft sind. Dann wird ne Fehlermeldung ausgworfen. Und das läuft über elseif.
      Z.B. }elseif(!isset($_POST['telefon']) || $_POST['telefon'] == "") {
      echo '<p align="center">Bitte geben Sie eine Telefonnummer an!<br><br><a href="javascript:history.back()">Zurück</a></p>';
      Und so weiter. Jetzt soll das auch mit der o.g. Abfrage gemacht werden. Ich weiß nur nicht wie.

      1. Moin Chris,

        Z.B. }elseif(!isset($_POST['telefon']) || $_POST['telefon']

        Zunächst bin ich kein Freund von elseif, da es meiner bescheidenen
        Meinung nach einen Schlangencode ergibt.

        Ich bevorzuge if Abfragen und auche gerne noch ein else, der
        Nachtei dabei ist, das du bei der nächsten if Abfrage das Ergebnis
        der vorherigen Abfrage berücksichtigen musst, nach dem Motto

        if ( teste das    wenn bisher kein Fehler )

        echo '<p align="center">Bitte geben Sie eine Telefonnummer an!<br><br><:history.back()">Zurück</a></p>';

        a href="javascript

        Da Du mit PHP arbeitest erscheint mir das "history.back()"
        eher unglücklich. Bis dahin eingegebene Daten sind dann weg, oder?

        regds
        Mike

        1. Zunächst bin ich kein Freund von elseif, da es meiner bescheidenen
          Meinung nach einen Schlangencode ergibt.

          Ja, ich kann das aber jetzt nicht mehr alles ändern, weil ich a bisserl unter zeitdruck stehe

          1. Moin,

            Ja, ich kann das aber jetzt nicht mehr alles ändern, weil ich a bisserl unter zeitdruck stehe

            poste bitte mal die entsprechende Sequence,
            mit Kommentar wo war passieren soll. Bzw. wo es hängt.

            regds
            Mike

            1. <?php if(!isset($_POST['submit'])) { ?>
              <form action="eintrag.php" method="post">

              <!-- Hier kommt das Formualar zum Eintragen. Ich hab das der Einfachheit jetzt einfach mal weggelassen -->

              <?php
              // die diversen Abfragen, ob AGB ok, Name ok, usw
              //Hier soll auch die Benutzernamen-Abfrage rein. Also in so
              //eine elseif-Schleife
              }elseif(!isset($_POST['agb']) || $_POST['agb'] == ""){
              echo '<p align="center">Sind Sie mit meinen AGBs nicht einverstanden?<br><br><a href="javascript:history.back()">Zurück</a></p>';
              }elseif(!isset($_POST['benutzername']) || $_POST['benutzername'] == ""){
              echo '<p align="center">Bitte geben Sie einen Benutzernamen ein!<br><br><a href="javascript:history.back()">Zurück</a></p>';
              }elseif(!isset($_POST['name']) || $_POST['name'] == ""){
              echo '<p align="center">Bitte geben Sie einen Namen ein!<br><br><a href="javascript:history.back()">Zurück</a></p>';
              }elseif(!isset($_POST['strasse']) || $_POST['strasse'] == "") {
              echo '<p align="center">Bitte geben Sie eine Straße ein!<br><br><a href="javascript:history.back()">Zurück</a></p>';
              }elseif(!isset($_POST['plz']) || $_POST['plz'] == "") {
              echo '<p align="center">Bitte geben Sie eine PLZ ein!<br><br><a href="javascript:history.back()">Zurück</a></p>';
              }elseif(!isset($_POST['pw']) || $_POST['pw'] == "") {
              echo '<p align="center">Bitte geben Sie ein Passwort ein!<br><br><a href="javascript:history.back()">Zurück</a></p>';
              }elseif(!isset($_POST['pw2']) || $_POST['pw2'] == "") {
              echo '<p align="center">Bitte wiederholen Sie Ihr Passwort!<br><br><a href="javascript:history.back()">Zurück</a></p>';
              }elseif(!isset($_POST['ort']) || $_POST['ort'] == "") {
              echo '<p align="center">Bitte geben Sie einen Ort an!<br><br><a href="javascript:history.back()">Zurück</a></p>';
              }elseif(!isset($_POST['telefon']) || $_POST['telefon'] == "") {
              echo '<p align="center">Bitte geben Sie eine Telefonnummer an!<br><br><a href="javascript:history.back()">Zurück</a></p>';
              }elseif($_POST['pw'] != $_POST['pw2']) {
              echo '<p align="center">Die Passwörter stimmen nicht überein!<br><br><a href="javascript:history.back()">Zurück</a></p>';
              }elseif (preg_match('/[^A-Z öäüÖÄÜßa-z_.-]/i', $_POST['name'])){
              echo 'Ungültige Zeichen im Textfeld.';
              }else{

              1. Moin Chris,

                }elseif (preg_match('/[^A-Z öäüÖÄÜßa-z_.-]/i', $_POST['name'])){
                echo 'Ungültige Zeichen im Textfeld.';
                }else{

                Das ist leider so unübersichtlich, daß mir die Zeit fehlt das zu
                durch forsten :-(

                Sorry & regds
                Mike

  2. Hello,

    So, also das soll überprüfen, ob es den Namen Chris schon in der DB gibt. Das klappt auch wunderbar. Jetzt soll das ganze nur ein Teil einer }elseif{..}-Schleife sein. Bloß ich weiß nicht,  wie ich das einfügen soll. Habt ihr einen Vorschlag.

    Es gibt keine "If-Schleifen"

    Mach eine Funktion aus deiner Überprüfung. dann kannst Du sie überall aufrufen.

    Liebe Grüße aus http://www.braunschweig.de

    Tom

    --
    Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen