Fehler im Skript unter Apache 2 und PHP 5

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

  • Fehler im Skript unter Apache 2 und PHP 5

    Hallo,

    ich habe ein sehr komisches Problem. Wenn ich meine Seite an der ich grad zu Hause rumprogrammiere testen möchte, funktioniert das Skript insofern nicht, als das kein Inhalt angezeigt wird (also einfach nur eine leere weisse Fläche).

    Hintergrund:
    Früher als ich mit dem Projekt angefangen hab, hatte ich Apache 1 und PHP 4.3.irgendwas. Da geht dieser Code, genauso wie im Internet unter http://www.rsv-brockwitz.de (es geht um den mittleren Teil der Homepage )

    Den Fehler habe ich auf diesen Codeausschnitt beschränkt, da ich ihn aus der Seite rausgelöscht habe , und es funktionierte nur halt ohne diese Datenbankabfrage.

    <?php

    $link = @mysql_connect("localhost","xxx","xxx")
    or die("Keine Verbindung möglich: " . mysql_error());

    mysql_select_db("xxx")
    or die("Auswahl der Datenbank fehlgeschlagen" . mysql_error());

    $result1 = mysql_query("SELECT Vorname, Name, year(Datum) FROM Mitglieder WHERE date_format(Datum,'%m%d') between date_format(date_sub(curdate(),interval 14 day),'%m%d') and date_format(curdate(),'%m%d')")
    or die("Anfrage fehlgeschlagen: " . mysql_error());

    while($row1 = mysql_fetch_array($result1))
    {$array1[] = $row1;}

    $result2 = mysql_query("SELECT date_format(Datum,'%d.%m.') FROM Mitglieder WHERE date_format(Datum,'%m%d') between date_format(date_sub(curdate(),interval 14 day),'%m%d') and date_format(curdate(),'%m%d')")
    or die("Anfrage fehlgeschlagen: " . mysql_error());

    while($row2 = mysql_fetch_array($result2))
    {$array2[] = $row2;}

    $result3 = mysql_query("SELECT date_format(Datum,'%d.%m.'), Ort FROM Termine WHERE Datum between curdate() and date_add(curdate(),interval 14 day) ORDER BY Datum")
    or die("Anfrage fehlgeschlagen: " . mysql_error());

    while($row3 = mysql_fetch_array($result3))
    {$array3[] = $row3;}

    $result4 = mysql_query("SELECT Spielklasse, Altersklasse FROM Termine WHERE Datum between curdate() and date_add(curdate(),interval 14 day) ORDER BY Datum")
    or die("Anfrage fehlgeschlagen: " . mysql_error());

    while($row4 = mysql_fetch_array($result4))
    {$array4[] = $row4;}

    mysql_close($link);

    ?>

    Unter meiner jetzigen Umgebung Apache 2.0.53 und PHP 5.0.3 kommt wie gesagt nur eine leere weisse Fläche im Zentrum der Seite.

    Muss ich irgendwas bei der Schreibweise ändern oder so, ich bin völlig ratlos.

    Für Hilfe vielen Dank im Voraus.

    MfG Simauki

  • #2
    Was macht das @ vor der Mysql Connection?

    Kommentar


    • #3
      Das muss da sein, sonst bringt der Apache einen Fehler. Das gehört zur mysql_connect - Funktion.

      Kommentar


      • #4
        Bitte?

        Was für einen Fehler bringt er denn? Poste die mal bitte.

        Kommentar


        • #5
          Fehlermeldung im Internetexplorer, in dem Teil in dem die Datei mit dem Skript ausgegeben werden sollte.

          Fatal error: Call to undefined function mysql_connect() in E:\Programme\Apache Group\Apache2\htdocs\Radball\main.php on line 3

          Wobei Line 3 die Zeile mit dem MySQL_connect ist.

          Kommentar


          • #6
            Übrigens an dem @ kanns nicht liegen, da es ja damals unter dem alten Apache und PHP 4.3 und jetzt auf der Homepage auch funktioniert.

            Kommentar


            • #7
              Schau mal in deine php.ini nach mysql.so bzw. mysql.dll oder besser gesagt nach dem Semikolon davor.

              Kommentar


              • #8
                Die mysql.dll hab ich gefunden und das Semikolon entfernt, die mysql.so gibts nicht in der php.ini

                Funktioniert aber immer noch nicht.
                Vielleicht noch zur Info, ich nutze MySQL 4.1.10

                Kommentar


                • #9
                  Ja dann ist ja wohl auch klar, wieso du nur eine weiße Seite bekommst.

                  Kommentar


                  • #10
                    alles mal neustarten.

                    Kommentar


                    • #11
                      Neugestartet hab ich auch schon, macht man ja als Windows-User quasi schon als Reflex wenn was nicht geht.

                      Kommentar


                      • #12
                        Fragen wir mal andersrum wenn ich vor dem mysql.dll eintrag in der php.ini das Semikolon gelöscht habe, wo muss dann diese mysql.dll stehen? Also auf welchen Pfad verweist der Eintrag.

                        Kommentar


                        • #13
                          Re: Fehler im Skript unter Apache 2 und PHP 5

                          http://www.php.net/manual/de/ref.mysql.php

                          In PHP 5 ist MySQL weder standardmäßig aktiviert, noch ist die MySQL Client Bibliothek in PHP enthalten. Die Gründe und weitere Details lesen Sie bitte in der FAQ nach. Aus diesem Grund müssen Benutzer von Windows php_mysql.dll in der php.ini aktivieren und die benötigte Bibliothek libmysql.dll entweder in das Windows Systemverzeichnis kopieren oder für die Umgebungsvariable PATH verfügbar machen.
                          I don't believe in rebirth. Actually, I never did in my whole lives.

                          Kommentar


                          • #14
                            Ok, danke erstmal. Das ist wahrscheinlich der fehler.

                            Die Behebung allerdings funktioniert nicht, ich hab das genauso gemacht wie in der Manual, aber es geht immer noch nicht. Das heißt es kommt immernoch diese blöde weisse Seite wo eigentlich Daten aus der Datenbank stehen sollten.

                            Kann mir bitte nochmal jemand sagen wo welche Datei hinverschoben werden muss. Also der mysql.dll Eintrag in der php.ini ist aktiviert. Ich hab auch schon fleißig die Dateien hin und herkopiert, aber es geht immer noch nicht.

                            Kommentar

                            Lädt...
                            X