MyI-c-H: Mit Apache PHP Lokal testen - keine Wirkung

Hallo,

ich habe mir neulich das Buch PHP und MySQL von Kevin Yank zugelegt worin ich darauf hingewiesen wurde, Apache 1.3 herunterzuladen. Nach langem suchen habe ich dieses nun auch gefunden und - so hoffe ich - auch weitestgehend richtig konfiguriert.

Wenn ich http://localhost eingebe, erscheint mir, dass es geklappt hat.
Allerdings geschieht nichts, wenn ich http://localhost/DATEINAME.DATEIENDUNG eingebe - die entsprechenden Dateien sind html- und PHP-Dateien, welche sich im htdocs Verzeichnis befinden.

Ich muss zugeben, dass ich von Konfigurationen keine Ahnung habe und diese bedauerlicherweise im Buch vorrausgesetzt wurde. Ich suche nun seit knapp einem Tag nach dem Fehler doch finde ihn nicht.

Da ich weiß, dass meine Angaben recht ungenau sind, frage ich euch, was ihr braucht, damit ich diesen Fehler mit eurer Hilfe beheben kann bzw. ob ihr bereits eine Ahnung habt?

Mit freundilchen Grüßen

--
"Stay foolish. Stay hungry" - Steve Jobs
  1. Hallo

    ich habe mir neulich das Buch PHP und MySQL von Kevin Yank zugelegt worin ich darauf hingewiesen wurde, Apache 1.3 herunterzuladen.

    ich fürchte dieses Buch ist alt. Sehr alt. Vielleicht zu alt.

    Damit Du Dich nicht mit der Konfiguration Deines lokalen Systems herumschlagen musst sondern gleich zügig loslegen kannst, empfehle ich Dir das Komplettpaket XAMPP, ich zitiere von der Homepage:

    <zitat>
        XAMPP ist eine Distribution von Apache, MySQL, PHP und Perl, die es
        ermöglicht diese Programme auf sehr einfache Weise zu installieren.
    </zitat>

    Freundliche Grüße

    Vinzenz

  2. Danke für deine prompte Hilfe.
    Das Problem hat sich so eben - warum auch immer - erledigt!

    Ich weiß, dass das nicht zum Topic gehört, doch könntest du einen Blick hier hineinwerfen?
    Es handelt sich hierbei um einen Auszug aus meinem Quellcode...

    mysql_query($SQL = 'create table JOKES (
        ID INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
        JokeText TEXT,
        JokeDate DATE NOT NULL
        )';
       if (@mysql_querry($sql)) {
        echo '<p>Witzetabelle erfolgreich erzeugt!</p>';
        } else {
         exit('<P>Fehler beim Anlegen der Witzetabelle: ' .
         mysql_error() . '</P>');
         }
      $sql = "UPDATE Jokes SET JokeDate='1994-04-01'
       WHERE JokeText LIKE '%huhn%'";
        if (@mysql_query($sql) ) {
        echo("Die Aktualisierung betraf ". mysql_affected_rows() . "Zeilen . </p>;
        } else {
         echo("<p>Fehler bei der Ausführung der Aktuallisierung: " .
            mysql_error() . "</p>");
          }

    Er sagt mir, dass in der Zeile 24 (entspricht hier der Zeile unter JokeDate DATE NOT NULL ein ";" unexpected sei.
    Exakt steht da "Parse error: syntax error, unexpected ';' in C:\Apache\apache_1.3.41\htdocs\joke-beispiel.php on line 24", und Zeile 24 entspricht der oben genannten...
    Wo ist der Fehler?

    DANKE!

    1. Wie kann ich in diesem Forum ganz normal auf Beiträge antworten?...?

      1. Hallo,

        Wie kann ich in diesem Forum ganz normal auf Beiträge antworten?...?

        ich weiß nicht, was du unter "ganz normal" verstehst. Du antwortest auf den Beitrag, den du auch angezeigt bekommst. Also völlig intuitiv!

        Oder was ist dein Problem?

        So long,
         Martin

        --
        Ich bin im Prüfungsstress, ich darf Scheiße sagen.
          (Hopsel)
    2. Hallo

      Es handelt sich hierbei um einen Auszug aus meinem Quellcode...

      mysql_query($SQL = 'create table JOKES (
          ID INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
          JokeText TEXT,
          JokeDate DATE NOT NULL
          )';

      ein Editor mit Syntaxhervorhebung und Anzeige von Klammerpaaren könnte Dir helfen, notepad++ kann das zum Beispiel. Du öffnest zwei Klammern, die erste für die Parameterliste von mysql_query, die zweite im SQL-Statement. Die erste wird nie geschlossen.

      if (@mysql_querry($sql)) {

      hmm, nicht schön :-(
      Zum jetztigen Zeitpunkt ist es ganz nett, wenn Du möglichst viele Fehlermeldungen, Warnungen, ... angezeigt bekommst. Vergiß am besten für die nächste Zeit, dass es den Fehlermeldungsunterdrückungsoperator @ gibt.

      Die Funktion

      mysql_querry()

      dürfte übrigens Deine Erfindung sein ...

      Antworten geht übrigens ganz einfach:
      Entweder Du klickst auf den Link "Nachricht beantworten" oder Du scrollst einfach nach unten bis Du zum Antwortfenster kommst. Hast Du ja schon zweimal hinbekommen.

      Freundliche Grüße

      Vinzenz

      1. Hallo,

        also erst einmal: Diese Funktion steht so im von mir erwähnten Buch PHP und MySQL von Kevin Yank. :)
        Ist also nicht meine Erfindung :)

        Den Fehler im Script selbst habe ich dann auch herausgefunden. Es war ein Syntaxfehler. Das "'" hätte vor die Klammer gemusst - ein Tippfehler im Lehrbuch (sehr gemein).

        Hm, jetzt habe ich aber noch ein Problem...
        Ich habe deinen Rat befolgt und den "@"-Operator einfach einmal weggelassen.

        Dabei zeigte mir MySQL dann auch einen Fehler an - erst dachte ich, dass dies normal sei und so richtig ist, doch dann bemerkte ich, dass etwas später im Lehrbuch gezeigt wurde, wie die Seite aussehen soll - der Quelltext ist soweit auch meinerseits fertig gewesen, nur bekomme ich keine Verbindung zum Server.

        "Can't connect to MySQL server on 'localhost' (10061)" Wird mir wortwörtlich wiedergegeben.

        Ich habe "localhost" als Server, "root" als Nutzer (wie lege ich eigentlich einen neuen an? - Darauf geht das Büchlein auch nicht ein) und als Passwort mein Passwort in der Connection-Zeile eingegeben.
        Vom SCript her stimmt also alles.
        Kann es sein, dass irgendwelche Konfigurationen schiefgelaufen sind?
        Ich möchte XAMPP o.ä. spielereien nicht nutzen, sondern wirklich selbst konfigurieren, da mir von seiten des Lehrbuches dazu geraten wurde, lieber alles selbst zu machen, um wenigstens schon mal damit umgegangen zu sein.

        Wenn mir jemand helfen kann, wäre ich sehr dankbar!

        DANKE!

    3. Hi!

      mysql_query($SQL = 'create table JOKES (
          ID INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
          JokeText TEXT,
          JokeDate DATE NOT NULL
          )';

      da steht
      mysql_query($SQL = 'create table Jokes([...])';

      Wie du jetzt vielleicht bemerkst, fehlt dort eine Kleinigkeit am Ende.

      Was ist das ueberhaupt fuer eine merkwuerdige Syntax, den Querystring innerhalb von mysql_query du definieren?

      Bewaehrt hat sich, zuerst den String zu definieren und den dann zu benutzen. Das ist auch beim Debugging sehr hilfreich.

      $SQL='select * from table';
      mysql_query($SQL);

      Kommt der Code aus dem Buch?

      --
      Trau Dich!