Simples PHP-Problem.....

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Simples PHP-Problem.....

    Hi,

    Bei meiner Seite wird über die URL ein Variablenwert mitgegenen die die andere Seite empfangen soll. Jetzt will ich herausbekommen ob der Artikel der über die URL mitgegeben wurde auch existiert. Dazu habe ich folgende Datenbankafrage gemacht:

    PHP-Code:
    $result2 mysql_query ("SELECT Artnr FROM $tablename WHERE Artnr=$art_id");

    mysql_close ();

    if (!
    $result2) {echo'Fehlermeldung';}
    else{echo
    'weiter';} 
    ($art_id wird über die URL mitgegeben)
    Irgendwo muss hier aber ein Fehler sein, da auch bei Artikeln die existieren die Fehlermeldung ausgegeben wird.....

    (andere Frage: welchen Wert hat $result2 wenn kein Artikel gefunden wurde ?)


    tschekowski

  • #2
    hast du
    1. dir mal die query ausgeben lassen?
    2. Register Globals in der php.ini gecheckt?
    3. mysql_error() gecheckt?
    4. mal close() weggelassen?
    5. mit COUNT() versucht?

    Kommentar


    • #3
      1. query ist einfach nur $result2 (gibt er aus)
      2. bin bei einem Anbieter - kann glaub gar nichts verändern
      3. als Fehler meldet er nur dass ich einen Syntaxfehler in Zeile 1 hab
      4.mysql_close ist drin (direkt nach der abfrage
      5.count bringt denk ich nichts da es im Normalfall immmer nur ein artikel geben sollte (ist in diesem fall auch so)

      weiß auch nicht worans noch liegen könnte.....

      Kommentar


      • #4
        1. vollkommen normal. lerne, wie man DB-abfragen auswertet. z,b, manual, oder schattenbaum.net
        2. aber wenigstens mal mit phpinfo() nachsehen könntest du ja ...
        3. ach, sieh an ...?
        4. tobiaz sprach von weglassen.
        5. denk mal darüber nach, welche erkenntnis in bezug auf deine fragestellung du wohl daraus gewinnen könntest, wenn COUNT das ergebnis 0 liefert ...
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar


        • #5
          PHP-Code:
          //$_GET und $_POST zu benutzen kann nicht schaden, bzw.
          //ist weit aus besser

          //dann mal den mysql_query mal z.B. so
          $result2 mysql_query ("SELECT 
                      Artnr 
                     FROM 
          $tablename 
                     WHERE Artnr=
          $art_id");

          //und dazu wieder mysql_error und schaue welche Line jetzt angezeigt wird. 
          mfg
          marc75

          <Platz für anderes>

          Kommentar


          • #6
            ok habs jetzt mal mit COUNT versucht:

            PHP-Code:
            $result2 mysql_query ("SELECT COUNT(Artnr) AS Anzahl FROM $tablename WHERE Artnr = $art_id");
            $count mysql_result ($result20);

            if (
            mysql_errno()) 
               echo 
            mysql_error(); 

            mysql_close ();

            echo
            '$count'
            jetzt kommt aber folgende Fehlermeldung:
            Warning: mysql_result(): supplied argument is not a valid MySQL result resource

            (diese Abfrage hat in meinem anderen Script funktioniert.....)

            Kommentar


            • #7
              PHP-Code:
              $result2 mysql_query ("SELECT COUNT(Artnr) AS Anzahl FROM $tablename WHERE Artnr = $art_id") or die (mysql_error());

              $count mysql_result ($result20);

              if (
              mysql_errno()) 
                 echo 
              mysql_error(); 

              mysql_close ();

              echo
              '$count'
              ausgabe?
              Kissolino.com

              Kommentar


              • #8
                die gleiche Fehlermeldung wie oben...

                PHP-Code:
                $result2 mysql_query ("SELECT COUNT(Artnr) AS Anzahl FROM $tablename WHERE Artnr like '$art_id'");
                $count mysql_result ($result20); 
                so gibts keine Fehlermeldung mehr (sry hab vergessen, dass die Artnr aus Zahlen und Buchstaben besteht)
                Zuletzt geändert von tschekowski; 14.03.2004, 11:11.

                Kommentar


                • #9
                  Original geschrieben von tschekowski
                  so gibts keine Fehlermeldung mehr (sry hab vergessen, dass die Artnr aus Zahlen und Buchstaben besteht)
                  *grr* manchmal sollte man euch ... egal ... wo ist das "or die(mysql_error());" ?
                  Kissolino.com

                  Kommentar

                  Lädt...
                  X