[Funktion] Was ist daran falsch?

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

  • [Funktion] Was ist daran falsch?

    Hi.

    Ich würde gerne wissen, ob einer von euch vielleicht weiss, was daran flasch sein könnte.

    PHP Code:
    404:  function print_submenu_content($tscat$tssub)
    405:  {
    406:  
    407:         $tsmenuresult = @mysql_query("SELECT * FROM ".$tscat." WHERE category='".$tssub."'");
    408:      $tsmenudata mysql_fetch_array($tsmenuresult);
    409:  
    410:      echo("
    411:          <p><b>"
    .$tsmenudata[category]."</b>
    412:      "
    );
    413:  
    414:      $subornot ".$tsmenudata[submenu].";
    415:  
    416:      $screquete "SELECT * FROM ".$scat." WHERE category='".$ssub."'";
    417:      $scresult = @mysql_query($screquete);
    418:  
    419:      while ($subDb =mysql_fetch_object($scresult))
    420:      {
    421:          if($subornot == 1)
    422:          {
    423:              echo("
    424:                    <br>..::]<a href='
    $subDb->link'>$subDb->name</a>
    425:              "
    );
    426:          }
    427:          else
    428:          {
    429:              echo("
    430:                  <br>'
    $subDb->text'
    431:              "
    );
    432:          }
    433:      }
    434:  } 
    Es erscheint de Fehlermeldung:
    Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in /home/confixxhome/web297/html/test/functions.php on line 419
    Connection zur db ist bereits aufgebaut.
    Server OS ist Unix.
    keine besonderen Einstellungen in der php.ini.

    Mir fällt bei besten Willen keine Lösung ein.
    Ich wäre sehr dankbar für eure Hilfe.

    Greetz
    HPINC
    Last edited by [=-!H.P.INC.!-=; 09-09-2003, 23:30.

  • #2
    Mach mal mysql_query('DEINE_QUERY') OR die(mysql_error());

    PHP Code:
    $screquete "SELECT * FROM ".$scat." WHERE category='".$ssub."'"
    Die Variablen $scat und $ssub sind doch gar nicht vorhanden, oder habe ich da was übersehen?

    Comment


    • #3
      Hi.

      mysql_error() gibt aus:
      You have an error in your SQL syntax near '$screquete' at line 1
      Dabei ist line 1 : "<?" um php zu starten.

      Die Variable $screquete ist aber auf line 416.
      PHP Code:
      416:      $screquete "SELECT * FROM ".$scat." WHERE category='".$ssub."'"
      Ist da etwa ein Syntaxfehler drin? Also ich sehe da keinen.
      blackhole hat folgendes geschrieben:
      Die Variablen $scat und $ssub sind doch gar nicht vorhanden, oder habe ich da was übersehen?
      Diese beiden Variablen werden von einer anderen Datei aus übergeben, das habe ich vergessen zu schreiben.

      Kann mir vielleicht irgendwer weiterhelfen?

      Greetz
      HPINC

      Comment


      • #4
        Diese beiden Variablen werden von einer anderen Datei aus übergeben, das habe ich vergessen zu schreiben.
        Da es sich hier aber um eine Funktion und damit mit einem separaten Geltungsbereich handelt, musst du entweder die Variablen als Argument mitgeben oder aber
        PHP Code:
        global $scat$ssub
        an den Anfang der Funktion setzen.
        Last edited by blackhole; 10-09-2003, 00:11.

        Comment


        • #5
          Hi.

          Ich habs so gemacht, aber nichts hat das verändert. und das übergeben der Variablen in die Funktion hat ja schon geklappt.
          Daran kann es also nicht liegen.

          Jetzt habe ich immernoch die Fehlermeldung:
          You have an error in your SQL syntax near '$screquete' at line 1
          und der erste Teil der Funktion funktioniert ja auch.
          PHP Code:
          407:         $tsmenuresult = @mysql_query("SELECT * FROM ".$tscat." WHERE category='".$tssub."'");
          408:      $tsmenudata mysql_fetch_array($tsmenuresult);
          409:  
          410:      echo("
          411:          <p><b>"
          .$tsmenudata[category]."</b>
          412:      "
          ); 
          Also ich versteh die Welt nicht mehr.
          Ich brauche Hilfe!!

          Greetz
          HPINC

          Comment


          • #6
            mach mal ein print $screquete; und poste mal, was ausgegeben wird.

            Comment


            • #7
              Hi.

              Habe ich gemacht.
              Es wird folgendes Ausgegeben:
              SELECT * FROM site_submenu WHERE category='home'
              So soll es auch sein.
              Und dann kommt der Synatfehler (den es garnicht gibt?).

              Es gibt doch garkeinen Synatxfehler, oder?


              EDIT:
              Hat sich erledigt. Ich musste nur die ' bei dem querry entfernen.


              Greetz
              HPINC
              Last edited by [=-!H.P.INC.!-=; 10-09-2003, 01:55.

              Comment

              Working...
              X