Scripte mit WHERE gehen nicht auf Webserver

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

  • Scripte mit WHERE gehen nicht auf Webserver

    Guten Morgen

    ich habe folgendes Problem. Untenstehendes Script habe ich geschrieben um die tabelle news auszulesen und die Variablen an Flash zu übergeben. Juhuu, funzt auch, aber nur auf unserem Webspace - auf dem Webserver des Kunden geht es leider nicht. Wir haben unseren Webspace bei einem Provider der UNIX Hosts hat und der des Kunden (Windows2000, SP3)wurde von mir installiert mit mySQL 4.0.12 und PHP4.
    Desweiteren habe ich herausgefunden, das an dem WHERE Befehl liegen muss, denn das kleinere (leztes)script funktioniert einwandfrei. Bin schon am verzweifeln und der Kunde sitzt mir im Nacken *g*.

    mfg
    pixelfanatiker
    PHP-Code:
    <?

    include("./confic.inc.php");

    if(isset($_POST['item'])) {

        $itemneu=urldecode(utf8_decode($item));

        $query=mysql_query("SELECT * FROM news WHERE titel='$itemneu'");
     
            while ($spalte=mysql_fetch_array($query)) { 
            $id = $spalte["id"];
            $titel = $spalte["titel"];
            $shortinfo = $spalte["shortinfo"];
            $text = $spalte["text"];
            $bild = $spalte["image"];
            $link = $spalte["link"];
            $linkt = $spalte["linkname"];
            
               }
        
        echo "&id=".urlencode(utf8_encode($id));
        echo "&titel=".urlencode(utf8_encode($titel));
        echo "&shortinfo=".urlencode(utf8_encode($shortinfo));
        echo "&newstext=".urlencode(utf8_encode($text));
        echo "&bild=".urlencode(utf8_encode($bild));
        echo "&link=".urlencode(utf8_encode($link));
        echo "&linkt=".urlencode(utf8_encode($linkt));
        
        echo "&Message=YES";

        } else {
         
    echo "&Message=no Input"; 

    }

    ?>
    PHP-Code:
    <?

    include("./confic.inc.php");

    $query=mysql_query("SELECT * FROM news");

    echo "&headline="; 
        while ($spalte=mysql_fetch_array($query)) { 
        $text = $spalte["titel"];
        echo "".$text.",";
        }
    echo"&";

    ?>
    lasstmichdurchichbinarzt

  • #2
    1. welche php-version genau?

    2. wie/wo wird $itemneu definiert?

    3. warum verwendest du kein or die(mysql_error()) bei mysql_query() ?


    2.+3. hättest du schon vor deinem post machen können.
    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


    Kommentar


    • #3
      hi,

      also zu

      1. version müsste php-4.3.1 sein

      2. $itemneu ist $item nur in utf8 decodiert. $itemneu=urldecode(utf8_decode($item));

      3. kenn ich nicht. hab erst vor kurzem begonnen, mit php und mysql zu arbeiten, mir fehlt es noch an erfahrung und syntaxkenntnissen.

      mfg
      lasstmichdurchichbinarzt

      Kommentar


      • #4
        1. ok.

        2. habe ich wohl übersehen.

        3. mache aus
        PHP-Code:
        $query=mysql_query("SELECT * FROM news WHERE titel='$itemneu'"); 
        einfach mal das hier.
        PHP-Code:
        $sql "SELECT * FROM news WHERE titel='".$itemneu."'";
        echo 
        $sql;
        $query=mysql_query($sql) or die(mysql_error()); 
        welche ausgabe kommt?
        INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


        Kommentar


        • #5
          hallo,

          in Flash kommen keine Variablen an. Um es im Browser zu testen ändere ich if(isset($_POST['item'])) { in if(isset($_GET ['item'])) { und bekomme

          SELECT * FROM news WHERE titel=''&id=&titel=&shortinfo=&newstext=&bild=&link=&linkt=&Message=YES

          im browser als ausgabe.

          mfg
          lasstmichdurchichbinarzt

          Kommentar


          • #6
            Original geschrieben von pixelfanatiker
            SELECT * FROM news WHERE titel=''&id=&titel=&shortinfo=&newstext=&bild=&link=&linkt=&Message=YES
            das dies kein korrektes SQL ist, muss ich dir aber nicht sagen. oder doch?
            INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


            Kommentar


            • #7
              *kleinlaut* hmm, wohl doch. könnte gut sein, dass ich mir etwas falsch angelesen habe oder gar aus anderen scripten falsch erlernt habe - kläre mich doch bitte auf.
              die meisten tipps hatte ich bisjetzt aus dem flashforum, da gibts zwar auch kompetente php/mysql hilfe, aber dort sind eben net so viele vom fach *g*.

              ich weiß aber auch nicht wie gut du dich mit dem zusammenspiel von php und flash auskennst. die ausgaben mit dem & davor sind zur definierung einer variable für flash. der wert nach dem = ist dann der inhalt der variable.
              Zuletzt geändert von pixelfanatiker; 10.09.2003, 10:21.
              lasstmichdurchichbinarzt

              Kommentar


              • #8
                lies dir das mal durch.
                http://www.schattenbaum.net/php/mstart.php

                da kannst du den umgang mit mysql erlernen...
                INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                Kommentar


                • #9
                  oke, werd ich machen - der anfang ließt sich schon einmal sehr gut!

                  könnte es aber auch an den register_globals (sind bei uns auf jedenfall auf on) liegen?

                  mfg
                  lasstmichdurchichbinarzt

                  Kommentar


                  • #10
                    Original geschrieben von pixelfanatiker
                    könnte es aber auch an den register_globals (sind bei uns auf jedenfall auf on) liegen?
                    wenn die RG=ON sind, ist das zwar unsauber, aber dein script sollte es nicht stören.

                    was dein script aber zu 100% stört ist die nicht korrekte sql-query. da MUSST du primär ansetzen.
                    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                    Kommentar


                    • #11
                      ok, hab mich nun etwas eingelesen. mein script sieht nun so aus:
                      PHP-Code:
                      <?
                      include("./confic.inc.php");

                      if(isset($_GET['item'])) {

                          $itemneu=urldecode(utf8_decode($item));
                          $sql = "SELECT * FROM news WHERE titel = $itemneu";
                          $query = mysql_query($sql) or die(mysql_error());
                           while ($spalte=mysql_fetch_array($query)) { 
                              $id = $spalte["id"];
                              $titel = $spalte["titel"];
                              $shortinfo = $spalte["shortinfo"];
                              $text = $spalte["text"];
                              $bild = $spalte["image"];
                              $link = $spalte["link"];
                              $linkt = $spalte["linkname"];
                              
                                 }
                          
                          echo "&id=".urlencode(utf8_encode($id));
                          echo "&titel=".urlencode(utf8_encode($titel));
                          echo "&shortinfo=".urlencode(utf8_encode($shortinfo));
                          echo "&newstext=".urlencode(utf8_encode($text));
                          echo "&bild=".urlencode(utf8_encode($bild));
                          echo "&link=".urlencode(utf8_encode($link));
                          echo "&linkt=".urlencode(utf8_encode($linkt));
                          
                          echo "&Message=YES";

                          } else {
                           
                      echo "&Message=no Input"; 
                      }
                      ?>
                      als fehlermeldung bekomme ich

                      You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1

                      sorry, nun blick ich gar nix mehr. so sollte es doch richtig sein.
                      für weitere unterstützung wäre ich sehr dankbar.

                      lasstmichdurchichbinarzt

                      Kommentar


                      • #12
                        mach aus
                        PHP-Code:
                        $itemneu=urldecode(utf8_decode($item)) 
                        mal
                        PHP-Code:
                        $itemneu=urldecode(utf8_decode($_GET['item'])); 
                        Ich denke, also bin ich. - Einige sind trotzdem...

                        Kommentar


                        • #13
                          so, jetzt geht's *springhüpfboingbumbatsch*
                          [AS]$itemneu = utf8_decode($_POST['item']);[/AS]

                          einfach ohne urldecode!

                          mfg
                          pixel
                          lasstmichdurchichbinarzt

                          Kommentar

                          Lädt...
                          X