Ankündigung

Einklappen
Keine Ankündigung bisher.

MySQL Fehler ohne Fehlermeldung

Einklappen

Neue Werbung 2019

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

  • MySQL Fehler ohne Fehlermeldung

    Hallo zusammen,
    ich hab mal wieder ein Problem, wo ich nicht weiterkomme. Ich stelle eine Verbindung mit MySQL her, soweit so gut, ABER wenn ich dann versuche Daten auszulesen passiert gar nichts, keine Fehlermeldung (außer meine Inziniert, da dann alles Fehlschlägt ^^). Es wird bei keiner Abfrage was ausgelesen .

    So hier mal der Ausschnitte aus dem Code:

    function/mysql.php:

    PHP-Code:
    <?php

    $verbindung 
    mysql_connect("localhost","root","") OR DIE ('Konnte keine Verbindung zur Datenbank herstellen.');
    mysql_select_db("mydb") OR DIE ('Die Tabelle konnte nicht ausgew&auml;hlt werden.');

    ?>
    Die wird dann in index.php includiert. Nun wird ein weitere Datei darin Includiert:

    PHP-Code:
    else
        {
        
    $lang $_GET['lang'];
        if(!
    file_exists("language/$lang/index.php"))
            {
            
    $sql "SELECT sprache FROM settings LIMIT 1";
            
    $result mysql_query($sql);
            
    $fetch mysql_fetch_array($result);
        echo 
    mysql_error();
            
    $lang $fetch->sprache;
            }
        }
    $_SESSION['lang'] = $lang
    session_start und so ist natürlich alles drin .

    Nun wird die Session auf der Indexseite weiterverwendet:

    PHP-Code:
    $lang $_SESSION['lang'];

    include(
    "language/$lang/index.php"); 
    Nun bleibt aber die Variable $lang leer .

    Naja, dachte ich hab ich irgendwo ein Fehler in den Abfragen... *Halbe Stunde such* aber ncihts gefunden, hm dann hab ich mir gedacht dann probieren wir es mal mit einer anderen Abfrage, aber wieder kein Ergebnis -.-'.

    Wenn weiterer Code benötigt wird einfach fragen .


    Gruß und so .

    Achso, Tabelle auch mehrfach überprüft .


  • #2
    $fetch = mysql_fetch_array($result);

    ändern in

    $fetch = mysql_fetch_object($result);


    Und mysql_error unmittelbar hinter mysql_query einbauen.

    Kommentar


    • #3
      Psst...

      was ist, wenn in $_GET['lang'] was anderes steht als du erwartest ?
      PHP-Code:
      $lang $_GET['lang']; 
      file_exists("language/$lang/index.php"

      Kommentar


      • #4
        zu include sag ich dir mal:

        ich machs so:
        PHP-Code:
        include 'language/'.$lang.'/index.php'
        Nach deinem, solltest du das machen
        PHP-Code:
        include('language/'.$lang.'/index.php'); 
        was ergibt denn
        PHP-Code:
         echo 'lang ist: '.$lang
        ?
        MfG
        ~Capfly

        Kommentar


        • #5
          Und das error_reporting gefälligst auf E_ALL stellen - das hätte dich nämlich schon darauf hingewiesen, dass das Format der Daten und der Versuch des Zugriffs darauf nicht zueinander passen.

          Kommentar


          • #6
            Zitat von Papst Beitrag anzeigen
            Psst...

            was ist, wenn in $_GET['lang'] was anderes steht als du erwartest ?
            PHP-Code:
            $lang $_GET['lang']; 
            file_exists("language/$lang/index.php"

            Danke, hatte ich übersehn .

            echo 'lang ist: '.$lang;
            Wenn ich die Abfrage mache: "lang ist:"
            , @Hexe aber ich guck gleich mal ob es geht , grad wenig Zeit muss noch ebend Fahrrad reparieren .

            Aber THX@all , deswegen schätze ich das Forum hier so ^^.

            Gruß und so.

            Kommentar


            • #7
              Wenn $lang leer ist, dann steht in der URL Leiste kein "?lang=iwas" ?

              mach dir evtl nochn Array, welche Ordner zugelassen sind, dann kannste gegebenenfalls eine Fehlerseite aufrufen, falls wer "?lang=dassollhiernichthin" macht.
              MfG
              ~Capfly

              Kommentar


              • #8
                Achso, ja über GET geht das , halt nur nicht die Abfrage aber wenn ich das manuell eingebe dann wohl .

                Und ich denke so, oder so ähnlich werde ich es machen .

                Gruß und so.

                Kommentar


                • #9
                  Wenn der SQL nicht geht, probier den hier:

                  PHP-Code:
                  else
                      {
                      
                  $lang $_GET['lang'];
                      if(!
                  file_exists("language/".$lang."/index.php"))
                          {
                          
                  $sql "SELECT `sprache` FROM `settings` LIMIT 1";
                          
                  $result mysql_query($sql);
                          
                  $fetch mysql_fetch_object($result);
                      echo 
                  mysql_error();
                          
                  $lang $fetch->sprache;
                          }
                      }
                  $_SESSION['lang'] = $lang
                  MfG
                  ~Capfly

                  Kommentar


                  • #10
                    Zitat von CoKeSiDe Beitrag anzeigen
                    Achso, ja über GET geht das , halt nur nicht die Abfrage
                    Wo der (offrensichtlichste) Fehler dabei liegt, wurde dir ja schon erklärt.

                    Tu' dir selber (und uns) den Gefallen, das error_reporting während der Entwicklung auf E_ALL zu stellen.

                    Kommentar

                    Lädt...
                    X