mark: gibts != ?

hi everybody!
hab bei google nix gefunden

brauche das hier, um zu überprüfen, ob die products_model schonmal vorkommt, und wenn ja, einen Fehler auszugeben
das != deshalb, weil mit der products_id != EIGENE ausgeschlossen werden soll, dass beim Update des eigenen Produkts es sich selber vom Speichern ausschließt, weil eben die products_model schon vorkommt
(das ist auch mein problem im moment, sonst läufts)

$duplicate_query = tep_db_query("select count(*) as total from " . TABLE_PRODUCTS . " where products_id != '" . $HTTP_POST_VARS['products_id'] . "' and products_model = '" . $HTTP_POST_VARS['products_model'] . "'");

also das != scheint net zu gehen.. Gibts ne andere Möglichkeit?
thx Mark

  1. Hi!

    brauche das hier, um zu überprüfen, ob die products_model schonmal vorkommt, und wenn ja, einen Fehler auszugeben
    das != deshalb, weil mit der products_id != EIGENE ausgeschlossen werden soll, dass beim Update des eigenen Produkts es sich selber vom Speichern ausschließt, weil eben die products_model schon vorkommt
    (das ist auch mein problem im moment, sonst läufts)

    $duplicate_query = tep_db_query("select count(*) as total from " . TABLE_PRODUCTS . " where products_id != '" . $HTTP_POST_VARS['products_id'] . "' and products_model = '" . $HTTP_POST_VARS['products_model'] . "'");

    Wie du bereits richtig erkannt hast, gibt es in MySQL den »!=«-Operator nicht um Vergleiche durchzuführen. Stattdessen funktioniert das so:

      
    $duplicate_query = tep_db_query("select count(*) as total from " . TABLE_PRODUCTS . " where not products_id = '" . $HTTP_POST_VARS['products_id'] . "' and products_model = '" . $HTTP_POST_VARS['products_model'] . "'");  
    
    

    Grüße,
    Fabian St.

    1. Hi,

      na ja, also im Interesse der Ähnlichkeit zum Originalstatement reicht es aber auch einfach, das "!=" durch ein "<>" zu ersetzen.

      MfG
      Rouven

      --
      -------------------
      ss:) zu:) ls:& fo:) de:< va:{ ch:? sh:) n4:( rl:? br:$ js:| ie:) fl:(
    2. Hallo Fabian St.,

      Wie du bereits richtig erkannt hast, gibt es in MySQL den »!=«-Operator nicht um Vergleiche durchzuführen.

      Seit wann?

      Laut http://dev.mysql.com/doc/mysql/en/comparison-operators.html ist != als Ungleich-Operator ebenso zulässig wie <>.

      Grüsse
      Frankie

      1. Hi!

        Wie du bereits richtig erkannt hast, gibt es in MySQL den »!=«-Operator nicht um Vergleiche durchzuführen.

        Seit wann?

        Laut http://dev.mysql.com/doc/mysql/en/comparison-operators.html ist != als Ungleich-Operator ebenso zulässig wie <>.

        Ups, da habe ich wohl Mist erzählt ;-) Irgendwie dachte ich im Hinterkopf gehabt zu haben, dass in MySQL keine Vergleiche mit dem != Operator möglich sind ...

        Grüße,
        Fabian St.

  2. echo $begrüßung;

    $duplicate_query = tep_db_query("select count(*) as total from " . TABLE_PRODUCTS . " where products_id != '" . $HTTP_POST_VARS['products_id'] . "' and products_model = '" . $HTTP_POST_VARS['products_model'] . "'");

    Der PHP-Code stört bei Problemen mit einer SQL-Abfrage nur. Wie lautet der genaue SQL-Befehl, den du an die Datenbank sendest?

    also das != scheint net zu gehen..

    Worin äußert sich dieses "scheint net zu gehen"?
    Gibt es Fehlermeldungen von PHP und/oder MySQL (siehe mysql_error())?

    Gibts ne andere Möglichkeit?

    Probiere dein Statement zuerst in einer dafür geeigneten Umgebung bevor du Teile davon variabel mit PHP ersetzen lässt.

    echo "$verabschiedung $name";