kostenloser Webspace werbefrei: lima-city


Kontrollieren ob etwas in der Tabelle schon eingetragen ist

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    seth93

    seth93 hat kostenlosen Webspace.

    Hi,
    ich möchte ein Tiptag/spiel">spiel machen.
    Zu jedem Spiel kann man ein Tip abgeben.
    Wie finde ich jetzt heraus ob ein Tip schon für ein
    Spiel abgegeben wurde?
    Ich hab das so versucht:
    $result = mysql_query("SELECT id 
    FROM bundesliga WHERE username LIKE '$username'");
    $menge = mysql_num_rows($result);
    if($menge == 0)
    {
    Formular
    }

    Aber sobald in der Tabelle bundesliga ein Eintrag ist, wird das Formular nicht mehr angezeigt.
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. d*****e

    Hi,
    könntest du mir mal den Aufbau deiner Tabelle zeigen? So kann ich dir leider nur bedingt helfen.

    Gruß
    DCBlaze
  4. Autor dieses Themas

    seth93

    seth93 hat kostenlosen Webspace.

    Ja, es gibt einmal die Tabelle
    wo die Mannschaften, der Spieltag aufgezählt sind.
    Also z.B.
    Mannschaft1 - Mannschaft2 - ID
    Bayern München - HSV - 1
    Werder Bremen - VFB STuttgart - 2

    Dann gibt es die 2.Tabelle bundesliga
    Da wird der Benutzername, die beiden Mannschaften und die ID eingetragen.

    Und es soll halt kontrolliert werden, ob zu dem Spiel schon ein
    Tip abgegeben wurde, wenn ja, dann soll der Tip angezeigt werden, wenn nicht, dann das Formular zum mittippen.



  5. d*****e

    $Formular = '';
    $SubmitButton = '';
    $result = mysql_query("SELECT * FROM bundesliga WHERE username = ".$username." AND ID = ".XXX."" );
    $menge = mysql_num_rows($result);
    if($menge != 0)
    {
    $Formular = readonly;
    $SubmitButton = disabled;
    }


    (XXX muss ersetzt werden)

    Danach machst du dein Formular rein und schreibst in jedem Tag des Formulars $Formular mit rein. Also z.B.:

    <input ".$Formular." type="text" name="Tor_1" id="Tor_1" size=2 maxlength=2>


    Wenn bereits Ergebnisse zum Spiel drin sind, dann sind die Formularfelder zwar da, aber sie können nicht geändert werden. Solltest du den Absenden-Button dann auch noch weghaben wollen, dann musst du im Tag des Buttons noch die Variable $SubmitButton hinzufügen.

    Habe es noch nicht ausprobiert, aber sollte so klappen.

    Gruß
    DCBlaze

    Beitrag geändert: 23.10.2008 13:46:21 von dcblaze
  6. Autor dieses Themas

    seth93

    seth93 hat kostenlosen Webspace.

    Hi,
    danke erstmal für dein Script.
    Da kommt folgende Fehlermeldung:
    Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /usr/export/www/hosting/jinnyboy/tippen.php on line 49

    Die bekomm ich aber seit Tagen wenn ich mysql_num_rows mache.
    Ich find den Fehler nicht. Verbindung steht, Tabelle exisitert und
    die Tabelle ist auch gefüllt.
  7. d*****e

    Kannst du dir denn die Tabelle ausgeben lassen? Hört sich für mich so an als ob das mysql_query nicht funktioniert und deshalb nichts im $result steht.

    Ansonsten probiere diese mal aus:

    $result = mysql_query("SELECT * FROM bundesliga WHERE username = ".$username." AND ID = ".XXX.";");


    Kurz vor Ende der Zeile habe ich ein Semikolon hinzugefügt. Vielleicht liegt es dadran.

    Gruß
    DCBlaze
  8. Versuch mal das:

    $result = mysql_query("SELECT * FROM bundesliga WHERE username = '".$username."' AND ID = '".XXX."'") or die(mysql_error());


    Damit sollte dann zumindest eine aussagekräftigere Fehlermeldung kommen.
  9. projektverwaltung

    projektverwaltung hat kostenlosen Webspace.

    Du kannst einfach das was du auf Existenz überprüfen willst aus der Datenbank in eine Variable auslesen und dann Überprüfen ob etwas n der Variablen steht, falls nicht liegt dass daran dass nichts ausgelesen werden konnte und das wiederum daran, dass der geünschte Eintrag in der Datenbank nicht vorhanden war
  10. Wahrscheinlich liegt es einfach daran, dass im Beispielcode ID als String angegeben wird, in der DB aber als int deklariert ist. Einfach mal die Anführungszeichen weglassen. Und nächstes Mal statt irgendwelcher Beispielinhalte der Tabelle lieber die Datentypen posten.
  11. l*******r


    Hi,
    danke erstmal für dein Script.
    Da kommt folgende Fehlermeldung:
    Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /usr/export/www/hosting/jinnyboy/tippen.php on line 49

    Die bekomm ich aber seit Tagen wenn ich mysql_num_rows mache.
    Ich find den Fehler nicht. Verbindung steht, Tabelle exisitert und
    die Tabelle ist auch gefüllt.



    Hatte ich auch mal...

    Lösung:
    Fange vorher ab, ob die Rückgabe vielleicht "false" ist, also:

    <? 
    $result = mysql__query(...); 
    if ($result != false):
      $var = mysql_num_rows($result);
      //(...Mache irgendwas mit deiner Zeilenanzahl)
    endif;
    ?>


    Dürfte keinen Fehler geben!

    Euer LDer
  12. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!