mysql_query und mysql_errno abfangen

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • mysql_query und mysql_errno abfangen

    Schaffe es einfach nicht . Habe jetzt eine Stunde versucht es zu lösen.
    Code:
    $insertSQL = sprintf("INSERT INTO backlink (projektName, zielUrl, backlinkUrl, backlinkText, linkart, partner, unsere_tausch_seite, firstDate) VALUES (%s, %s, %s, %s, %s, %s, %s, %s)",
                           GetSQLValueString($_POST['projektName'], "text"),
                           GetSQLValueString($_POST['zielUrl'], "text"),
                           GetSQLValueString($_POST['backlinkUrl'], "text"),
                           GetSQLValueString($_POST['backlinkText'], "text"),
                           GetSQLValueString($_POST['linkart'], "text"),
                           GetSQLValueString($_POST['partner'], "text"),
                           GetSQLValueString($_POST['unsere_tausch_seite'], "text"),
                           GetSQLValueString($_POST['firstDate'], "date"));
    
      mysql_select_db($database_onemanseoDB, $onemanseoDB);
      $Result1 = mysql_query($insertSQL, $onemanseoDB);
      if (!$Result1) {
           $message = mysql_errno();
              if ($message == 1062) {
               echo 'doppelter eintrag';  
             } 
     }
    Habe einen Uniqe Index über zwei Tabellenfelder um doppelte Einträge zu Verhindern.
    Jetzt möchte ich wenn das mysql_query die Fehlernummer 1062 für doppelte Einträge zurück gibt das der doppelte Eintrag und eine Fehlermeldung ausgegeben wird.
    Wenn es sich nicht um den Fehler 1062 handelt sollte eine andere Fehlermeldung mit mysql_error ausgegeben werden.

    Irgendwie bekomme ich das überhaupt nicht hin da ich es nicht schaffe mysql_errno auszulesen!?

  • #2
    Originally posted by AKraisser View Post
    Irgendwie bekomme ich das überhaupt nicht hin da ich es nicht schaffe mysql_errno auszulesen!?
    Kannst du das bitte genauer erklären, warum du es nicht schaffst bzw. was dabei nicht so klappt wie du es erwarten würdest? Davon abgesehen: Verwende besser
    PHP Code:
    mysql_errno($onemanseoDB
    Du hast es bis dorthin so schön explizit gemacht, da wäre es blöd, damit jetzt aufzuhören, vor allem, wenn du mehrere parallele Verbindungen benutzt.
    [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
    Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
    Super, danke!
    [/COLOR]

    Comment


    • #3
      Originally posted by AmicaNoctis View Post
      Kannst du das bitte genauer erklären, warum du es nicht schaffst bzw. was dabei nicht so klappt wie du es erwarten würdest? Davon abgesehen: Verwende besser
      PHP Code:
      mysql_errno($onemanseoDB
      Du hast es bis dorthin so schön explizit gemacht, da wäre es blöd, damit jetzt aufzuhören, vor allem, wenn du mehrere parallele Verbindungen benutzt.
      Ok danke habe ich geändert. Also es funktioniert einfach nicht das ich mysql_errno der Variable $message übergebe!
      Wenn ich dann mit z.B. echo $message die Variable ausgebe wird diese ignoriert als hätte sie keinen Wert. Auch die if Abfrage geht nicht .
      Kann es sein das man mysql_errno nicht so einfach einer Variable zuweisen kann?
      Code:
       if (!$Result1) {
           $message = mysql_errno($onemanseoDB);
            if ($message == 1062) {
             echo 'doppelter eintrag';  
            }
       }

      Comment


      • #4
        Originally posted by AKraisser View Post
        Kann es sein das man mysql_errno nicht so einfach einer Variable zuweisen kann?
        Doch, natürlich kann man.

        Und man kann auch mal var_dump nutzen, um sich anzuschauen, was die Funktion tatsächlich für einen Wert liefert ...!

        Auch die if Abfrage geht nicht .
        Von der Blödsinnigkeit dieser "funzt nich"-Aussage mal abgesehen - hast du denn mal mittels simpler Testausgaben kontrolliert, ob das Script denn überhaupt bis dort kommt? Ob die Bedingungen vorheriger If-Abfragen zutreffend waren ...?


        Lerne bitte langsam mal die Grundlagen einer sinnvollen und logischen Fehlersuche.
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Comment

        Working...
        X