Dringende Hilfe gesucht beim Praktikum(firebird/php))

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

  • Dringende Hilfe gesucht beim Praktikum(firebird/php))

    Hallo,
    ich bin neu hier und eigentlich auch noch ziemlich neu in der Programmierung an sich. Ich sitze gerade in meinem Praktikum wo es auch hauptsächlich noch um eine Übernahme zur Ausbildung geht. Daher will ich meine Chefs nicht enttäuschen.
    Erstmal die Aufgabe, die mir übergeben wurde:
    ich soll via PHP Scripte erstellen, die das Hilfesystem der Firma verbessern. Hierbei soll ein zunächst seitens des Mitarbeiters Login(Statusänderung "anwesend") erfolgen. Diese Daten sollen in einer Datenbank(Firebird) authentifiziert werden. Anschliessend wird auf seiten des Clienten im Hilfssystem ein Eintrag für die Mitarbeiter erstellt(Durch einfache abfrage des Status aus der Datenbank). So kann der Kunde sich aussuchen mit welchen Mitarbeiter er das Problem lösen möchte. Nun meldet sich der Mitarbeiter zum Problemlösen an(Statusänderung "Beschäftigt"--> Datenbank)und hat dann via Fernwartung die Möglichkeit das Problem zubeheben. Anschliessend soll er sich aus der aktuellen Bearbeitung ausloggen(), ein Prokoll vorgesetzt bekommen und da seinen Verlauf dokumentieren. Diese Dokumentation wird dem Clienten-Eintrag angehangen.

    so soll das ganze irgendwann mal aussehen. aus test zwecken lass ich momentan alles über den local host laufen und emuliere mit xampp.
    Mein Problem an dieser Stelle ist folgende Fehlermeldung:

    FATAL ERROR: Call to undefined function ibase_connect() in C:\hdocs\test.php on line 6

    Ich weiss mittlerweile, dass der Server die Funktion nicht kennt. Durch eine Recherche angeleitet, habe ich dann die php_interbase.dll in die php.ini eingebunden:
    Code:
    extension=php_interbase.dll
    extension=c:\xampp\php\ext\php_interbase.dll
    ich habe sowohl beide methoden probiert als jede einzeln.
    Auf raten eines freundes habe ich die php.ini in den apache/config odner von xampp kopiert.
    ich habe mein Script abgeändert.
    ebenso habe ich ein fremdes Script von einem PP von einem Prof. übernommen. werte angepasst.

    das script:
    PHP-Code:
    <?php
    $host 
    'localhost:c:/firebird/examples/empbuild/EMPLOYEE.FDB';
    $username "SYSDBA";
    $password "masterkey";

    $dbh ibase_connect$host$username$password)or die("error in db connect"
                        or die(
    "Kann keine Verbindung zur Datenbank herstellen.");
        
    $stmt "Select * from SHOW_LANGS('SRep',4,'Italy')";
        
    $query ibase_prepare($stmt);
        
    $rs ibase_execute($query);
    $row ibase_fetch_row($rs);

    echo 
    $row[0];

    ibase_free_query($query);
    ibase_free_result($rs);

    ibase_close($dbh);
    ?>
    Ich habe für Testzwecke den Username und das Passwort ersteinmal so belassen.
    Ich verwende zur Zeit Firebird 2_5 in der SuperServer-Version, Php 5.3.5 und Xampp1.7.4 version.

    danke im vorraus.
    Zuletzt geändert von ; 18.07.2011, 17:53.

  • #2
    Hallo,

    die erste Variante (extension=php_interbase.dll) ist die richtige. Hast du daran gedacht, dass man den Apache neu starten muss? Wenn ja, schalte in der php.ini display_startup_errors auf On und starte ihn nochmal neu. Eventuell hast du da was falsches heruntergeladen und es gibt Versionskonflikte, über die du dann beim Start von Apache informiert wirst.

    Gruß,

    Amica
    [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
    Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
    Super, danke!
    [/COLOR]

    Kommentar


    • #3
      hab ich gemacht. sowohl im Browser als auch bei xampp--> apache kein fehler gemeldet

      Kommentar


      • #4
        Erst mal kontrolliert, ob du auch die richtige php.ini bearbeitest ...?

        phpinfo gibt Auskunft, welche das ist.
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar


        • #5
          also was ich bisher noch gemacht habe:
          php.ini kontroliert, geschaut ob der extensions pfad stimmt, und kontroliert ob die php_interbase.dll richtig eingebunden und im richtigen ordner liegt.

          Kommentar


          • #6
            Evtl. hilft dir die Vorgehensweise weiter, wie sie auf php.net empfohlen wird:

            PHP: Installation - Manual

            Kommentar


            • #7
              ich habe sowohl die den path fahrt neu angelegt als auch den PHPRC neu angelegt und neu gestartet. kein erfolgt
              allerdings ist nach dem neustart ein neuer fehler auf getreten:
              beim starten von apache erscheint folgende fehlermeldung:
              PHP Startup: Unable to load dynamic libary 'C:\xampp\php\ext\php_interbase.dll-Das angegebene Modul wurde nicht gefunden.

              danach startet dieser auch nicht ich habe bereits kontroliert ob die datei sich im ordner befindet, und das tut sie

              des weiteren findet er nun auch die php4tls.dll nicht mehr.
              wo muss ich diese einfügen und wo kann ich diese finden?
              Zuletzt geändert von ; 14.07.2011, 16:17.

              Kommentar


              • #8
                Neustart gemacht nach Änderung der PATH-Variablen?
                Und das Vorhandensein der gds32.dll hast du auch kontrolliert?

                Ich sitze gerade in meinem Praktikum wo es auch hauptsächlich noch um eine Übernahme zur Ausbildung geht. Daher will ich meine Chefs nicht enttäuschen.
                Meine Enttäuschung als Chef wäre letzten Endes vielleicht größer, wenn jemand Stunden mit der Suche nach den Ursachen eines solchen Problems vertrödelt, anstatt vielleicht einfach mal einen erfahrenen Kollegen hinzu zu ziehen und um Rat/Hilfe zu fragen ...
                I don't believe in rebirth. Actually, I never did in my whole lives.

                Kommentar


                • #9
                  Ich hatte dir doch schon gesagt, dass du es ohne absoluten Pfad angeben sollst. Das ext-Verzeichnis findet er selbst über die extension_dir-Eigenschaft. Außerdem müssen Pfadangaben mit Backslashes als String übergeben werden.

                  Nimm einfach deine selbstgeschriebene extension-Zeile raus, aktiviere die Originale, falls dort noch ein Semikolon davor ist und starte Apache nochmal neu.
                  [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
                  Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
                  Super, danke!
                  [/COLOR]

                  Kommentar


                  • #10
                    da kommen leider mehrere übel auf einmal in der ini hab ich bis zum zeitpunkt gerade garnichts mehr verändert. ich folgte einfach nur den anweisungen von der seite.
                    richtig genau das dachte ich mir auch(mitarbeiter) aber das problem ist das ich selbst die erfahrensten mitarbeiter hier gefragt habe und die aber alle kein plan von php haben. delphi ja und java bissl. aber php keiner. die hatten mal nen praktikanten der das wohl konnte.
                    die backslashes hab ich längst entfernt. es hat sich nichts verändert.

                    ich will das ganze hier auch nicht 6 wochen lange betreiben. sollte ich bis mmorgen nicht gefunden haben an lösungen muss ich das projekt leider ab oder aufgeben. Ich will bloss nicht aufgeben bevor ich alle möglichkeiten ausgekostet habe.
                    ich habe nun eine php4ts.dll gefunden. wo gehört die hin?.
                    Zuletzt geändert von ; 14.07.2011, 16:26.

                    Kommentar


                    • #11
                      Zitat von Jiraiya Beitrag anzeigen
                      die backslashes hab ich längst entfernt. es hat sich nichts verändert.
                      Ich hab nicht gesagt, dass man die einfach entfernen kann.

                      Wie lautet das extension_dir in der php.ini? Wie sieht die Zeile für die Firebird-Extension aktuell aus? Welche Fehlermeldung(en) kommen beim Startup?


                      Edit: php4ts.dll? Wo hast du die denn her? Die brauchst du nicht, wenn du mit PHP5 arbeitest, was man bei der Benutzung von XAMPP einfach mal unterstellen kann. Es bringt nicht, wenn du dir jetzt irgendwelche veralteten DLLs herunterlädst. Vielleicht wäre es besser, XAMPP nochmal neu zu installieren.

                      Bei der Gelegenheit fällt mir auf:

                      Zitat von Jiraiya Beitrag anzeigen
                      Ich verwende zur Zeit Firebird 2_5 in der SuperServer-Version, Php 5.3.5 und Xampp1.7.4 version.
                      Hast du etwa beides installiert? PHP ist doch in XAMPP schon drin. Eventuell ist das die Ursache, dass bei dir zwei Versionen durcheinander geraten sind?!?
                      Zuletzt geändert von AmicaNoctis; 14.07.2011, 16:30.
                      [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
                      Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
                      Super, danke!
                      [/COLOR]

                      Kommentar


                      • #12
                        Code:
                        extension_dir =  "C:\xampp\php\ext"
                        
                        extension=php_interbase.dll
                        Fehlermeldung1:
                        (neues kleines fenster ploppt auf mit http.exe als titel)
                        "Die Anwendung konnte nicht gestartet werden, weil php4ts.dll nicht gefunden wurde. Neuinstallation der Anwendung könnte das Problem beheben.

                        Fehlermeldung2:
                        "PhP Startup: Unable to load dynamic libary 'C:\xampp\php\ext\php_interbase.dll' - Das angegebene Modul wurde nicht gefunden."

                        nein ich habe firebird und xampp instaliert
                        Zuletzt geändert von ; 18.07.2011, 17:54.

                        Kommentar


                        • #13
                          Die dürfte gar nicht gesucht werden, weil die (wie gesagt) zu PHP4 gehört. Deine Installation scheint im Eimer zu sein, du solltest besser alles nochmal neu installieren und dabei darauf verzichten, dir irgendwelche DLLs von irgendwo herunterzuladen. Bring PHP erstmal wieder sauber zum Laufen (display_startup_errors einschalten) und meld dich dann nochmal, wenn du noch was brauchst.
                          [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
                          Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
                          Super, danke!
                          [/COLOR]

                          Kommentar


                          • #14
                            danke ich versuch es erstmal und schau dann nochmal rein

                            Kommentar


                            • #15
                              So ich habe jetzt das gesamte System(Firebird, xampp) neu aufgesetzt,selbstverständlich alles vorher deinstalliert, die verzeichnisse gelöscht und den rechner neugestartet.

                              anschliessend hab ich die php_interbase.dll in c:\xampp\php\ext\ kopiert da mir die phpinfo() diesen pfad für die extensions ausgegeben hat.
                              danach hab ich in der php.ini wieder den extention= php_interbase.dll eingeschrieben und die display_startup_errors = on gesetzt.
                              anschliessend hab ich xampp gestartet (firebird wurde nach der installation gestartet).

                              meine test2.php in der nur die phpinfo() drinsteckt funktioniert. die Daten über php werden mir angezeigt.

                              allerdings funtioniert meine test.php (siehe quelltext oben) immer noch nicht. Der Startup hat keine fehler geäussert es erscheint auch wieder die selbe Fehlermeldung:

                              Fatal error:Call to undefined function ibase_connect() in C:\xampp\htdocs\test.php on line 6

                              dies ist der aktuelle stand.

                              Kommentar

                              Lädt...
                              X