Ankündigung

Einklappen
Keine Ankündigung bisher.

ECONNreset ohne ersichtlichen Grund

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

  • ECONNreset ohne ersichtlichen Grund

    Hallo Allerseits!

    Ich hab mich jetzt mal hier in diesem coolen Forum registriert um Hilfe von fortgeschrittenen PHP Programmierern zu bekommen

    Ich habe folgendes Problem, mein Skript führt ein SELECT query aus – welches erfolgreich ist, danach soll es ein INSERT query ausführen – aber bei der Zeile wo ich die Abfrage definiere bricht es plötzlich ab und ich bekomme keinen Fehler, in der Konsole steht nur ECONNreset read

    Anbei der code:


    PHP-Code:
    <?php
    require_once("../PHPClasses/Helper.php");
    $place=$_POST["cook_place"];
    $landregister=$_POST["cook_landregister"];
    $contact=$_POST["cook_associatedContact"];
    $contactDetails=explode(" ",$contact);
    $contactFirstname=$contactDetails[0];
    $contactLastname=$contactDetails[1];
    if(
    $place==""||$landregister==""||$contact==""){
    exit(
    "Missing values!");
    }
    else{
    $id=rand();
    $DatabaseHelper=new DatabaseHelper();
    $dbc_vetusInternal=$DatabaseHelper->Connect("localhost","root","","vetusInternal");
    $phoneNumberQuery="SELECT phone FROM tb_contacts WHERE firstname="$contactFirstname" AND lastname="$contactLastname"";
    $phoneNumberObject=mysqli_query($dbc_vetusInternal,$phoneNumberQuery);
    $phoneNumber=mysqli_fetch_object($phoneNumberObject);
    if(
    $phoneNumber!=""){
    // TODO find out why INSERT INTO results in php ECONNRESETread
    $insertionQuery "INSERT INTO tb_searchareas (id, place, landregister,contact,contactphone) VALUES ('$id', '$place','$landregister','$contact','$phoneNumber')";
    // PHP CONNECTION RESET  -> Hier springt der debugger raus und die Connection wird resettet aber ich bekomme keinen Fehler
    mysqli_query($dbc_vetusInternal,$insertionQuery);
    }
    else{
    }
    }
    mysqli_close($dbc_vetusInternal);
    ?>

    Es wäre wirklich unglaublich toll wenn mir wer helfen bzw mir erklären könnte warum das so ist wie es ist

    Besten Dank

    Mit freundlichen Grüßen
    Manuel


  • #2
    Die Fehlermeldung hat nix mit PHP zu tun! Das ist ein NodeJS Fehler
    PHP-Manual ¡ mysql_* ist veraltet ¡ Debugging: Finde DEINE Fehler selbst ¡ Passwort-Hashing ¡ Prepared Statements

    Kommentar


    • #3
      [MOD: verschoben von PHP-Einsteiger]
      Competence-Center -> Enjoy the Informatrix
      PHProcks!Einsteiger freundliche Tutorials

      Kommentar


      • #4
        überarbeite mal diese Zeile:
        PHP-Code:
        $phoneNumberQuery="SELECT phone FROM tb_contacts WHERE firstname="$contactFirstname" AND lastname="$contactLastname""

        Kommentar


        • #5
          Zitat von caesar Beitrag anzeigen
          überarbeite mal diese Zeile:
          PHP-Code:
          $phoneNumberQuery="SELECT phone FROM tb_contacts WHERE firstname="$contactFirstname" AND lastname="$contactLastname""
          Danke für deine Antwort!

          Diese Abfrage funktioniert einwandfrei, ich bekomme die Telefonnummer ja zurück.
          Der Fehler tritt nur beim definieren der zweiten Abfrage auf.

          Kommentar


          • #6
            Zitat von Ulfikado Beitrag anzeigen
            Die Fehlermeldung hat nix mit PHP zu tun! Das ist ein NodeJS Fehler
            Danke für deine Antwort!

            Heißt das dass irgendwas mit dem AJAX fehlerhaft ist?

            Kommentar


            • #7
              Zitat von m99 Beitrag anzeigen
              Heißt das dass irgendwas mit dem AJAX fehlerhaft ist?
              Welches AJAX?

              Kommentar


              • #8
                Zitat von hellbringer Beitrag anzeigen

                Welches AJAX?
                Das Skript wird mit Ajax aufgerufen siehe hier:



                debugger;
                var place = $("#textfield_place").val();
                var landregister = $("#textfield_landRegister").val();
                var associatedContact = $("#select_contact").val();
                $.ajax({
                url: '../PHPScripts/AddSearchArea.php',
                type: "POST",
                data: { cook_place: place, cook_landregister: landregister, cook_associatedContact: associatedContact }
                }).done(function () {
                Materialize.toast('Added Search Area successfuly!', 4000) // 4000 is the duration of the toast
                location.reload();
                });



                Kommentar


                • #9
                  Wie das Script aufgerufen wird ist doch völlig egal, wenn der Fehler ganz woanders liegt, oder?
                  In diesem Fall bei der DB bzw. Query.
                  Und die Fehlermeldungen die dein Debugger anzeigt sind irrelevant, lass dir die Fehlermeldung von der DB zurückgeben.

                  Kommentar


                  • #10
                    Zitat von protestix Beitrag anzeigen
                    Wie das Script aufgerufen wird ist doch völlig egal, wenn der Fehler ganz woanders liegt, oder?
                    In diesem Fall bei der DB bzw. Query.
                    Und die Fehlermeldungen die dein Debugger anzeigt sind irrelevant, lass dir die Fehlermeldung von der DB zurückgeben.

                    Sorry für meine dumme Frage jetzt, aber wie kann es hier zu einem Datenbank Fehler kommen?
                    Ich schreibe ja nur die Anfrage als String auf eine Variable – da mache ich ja nichts mit der Datenbank, das kommt ja erst im nächsten Schritt – welcher aber nicht mehr erreicht wird.

                    Kommentar


                    • #11
                      Zitat von m99 Beitrag anzeigen

                      Diese Abfrage funktioniert einwandfrei,
                      Ich hätte einen Parse-Error vermutet - wegen den Anführungszeichen.... Na ja, das soll einer verstehen - aber nicht alles was läuft muss auch richtig sein...

                      Kommentar


                      • #12
                        Hinweis: Wenn Du nach PHP Fehlern suchst dann sicher nicht in der Konsole vom Browser. Der hat keine Ahnung ob da PHP im Hintergrund läuft!

                        Schalte doch erstmal in der php.ini error_reporting auf E_ALL und setze display_errors dort auf on.

                        Damit siehst Du schon das Desaster => Notice: Undefined… all diese Fehler solltest Du erst mal beheben.

                        Kommentar


                        • #13
                          Zitat von Messier 1001 Beitrag anzeigen
                          Hinweis: Wenn Du nach PHP Fehlern suchst dann sicher nicht in der Konsole vom Browser. Der hat keine Ahnung ob da PHP im Hintergrund läuft!

                          Schalte doch erstmal in der php.ini error_reporting auf E_ALL und setze display_errors dort auf on.

                          Damit siehst Du schon das Desaster => Notice: Undefined… all diese Fehler solltest Du erst mal beheben.
                          Die oben genannten Optionen sind bereits aktiviert, ich bekomme dennoch nirgendswo einen Error zu sehen, mysqli_error liefert nur false, da er eben nicht bis zur Abfrage kommt auch auf der Seite wird nichts angezeigt.

                          Kommentar


                          • #14
                            Also die Indizes die als Undefined angezeigt werden sind ja Variablen die ich vom JavaScript Ajax bekomme, diese haben aber auch einen Wert

                            Kommentar


                            • #15
                              Hallo Allerseits!

                              Ich wollte euch mitteilen dass ich das Problem behoben habe

                              War wirklich ein Dummer Fehler

                              PHP-Code:
                              $phoneNumberObject=mysqli_query($dbc_vetusInternal,$phoneNumberQuery);
                              $phoneNumber=mysqli_fetch_object($phoneNumberObject);
                              if(
                              $phoneNumber!=""){ 
                              $phoneNumber ist logischerweise das Objekt welches gefetcht wurde, das Property phone enthält dann natürlich die Nummer selbst.

                              Das if funktioniert weil das Objekt ja nicht null ist und beim Query kommt dann der Fehler da ja versucht wird ein Objekt einzufügen.

                              Hab das jetzt umgeändert :

                              PHP-Code:
                              if($phoneNumber->phone!="")
                              {
                              $insertionQuery "INSERT INTO tb_searchareas (id, place, landregister,contact,contactphone) VALUES ('$id', '$place','$landregister','$contact','$phoneNumber->phone')";



                              Ich möchte mich aber trotzdem für die zahlreiche Hilfe hier bedanken, ist wirklich ein tolles Forum!

                              Liebe Grüße
                              Manuel

                              Kommentar

                              Lädt...
                              X