ERLEDIGT
NEIN
NEIN
ANTWORTEN
18
18
ZUGRIFFE
612
612
EMPFEHLEN
-
Hallo Community,
ich habe vor einem Monat mein Projekt fertiggestellt, in dem CSV-Daten eingelesen und in einer Datenbank gespeichert werden.
Ablauf des Programms:- Einlesen der CSV-Daten per Dateiupload
- In Temporärer Datenbank speichern und neue Seite aufrufen, auf der die eingelesenen Daten präsentiert werden (Tabelle in einem Form-Tag (<form>) mit Inputboxen, die den Wert wiedergeben
- Wenn alle Daten richtig präsentiert werden, weitere Seite per Request in die aktuelle holen, die Daten speichert.
- Diese Seite holt sich die Daten per $_POST aus der vorherigen Seite und speichert sie in die entgültige Datenbank
So nun zum Problem.
Internetexplorer:
Funktionierte gestern nicht. Er gab mir immer meine Fehlermeldung aus, dass die Datei das falsche Format habe. Mit der gleichen Datei gings im Firefox aber. Heute ohne irgendeine Änderung am Quellcode und ohne Updates des OS oder des IEs funktioniert die Anwendung auch mit der Datei von gestern.
Firefox:
Wenn ich bei der Datenübersicht auf den Knopf zum Speichern klicke hängt sich die Website auf und ich kann nirgendwo mehr klicken, ... Fehlermeldungen zeigt Firebug bzw die Fehlerkonsole (habe gemeint es wäre vll JavaScript) aber auch nicht. Wenn ich jetzt in der Situation bin wo alles hängt und auf den "Aktuelle Seite neu laden"-Button klicke wird mir die Seite auf der ich war angezeigt und die Daten sind plötzlich in der Datenbank korrekt gespeichert.
An was liegt das? Wenn ichs nicht genau genug erklärt habe, bitte fragen.
-
01.02.12 08:27 #2
- Registriert seit
- Sep 2004
- Ort
- Möglingen (BaWü)
- Beiträge
- 3.109
Wenn das Projekt vor einem Monat fertig gestellt wurde und du schreibst das es im Internet Explorer gestern nicht ging, dann setze ich mal voraus das es in der Vergangenheit aber schon funktioniert hat!?
Hast du dir schonmal den Seitenquelltext angeschaut. Vielleicht wird da ja eine PHP-Fehlermeldung angezeigt (Fehleranzeige generell mal einschalten!).
Um aber helfen zu können sollten wir aber auch ein bisschen was vom Code sehen.Sollte ein Tipp von mir geholfen haben, habe ich nichts gegen eine entsprechende Bewertung oder ein Danke und wenn ein Problem gelöst ist, dann den Beitrag bitte auch als erledigt markieren.
Was ich gar nicht leiden kann sind User die es nicht für nötig halten auf Antworten zu reagieren, die Themen nicht als erledigt markieren und/oder die sich nicht für Hilfe bedanken.
-
Bin mir nicht sicher ob du hier im richtigen Forum bist.
PHP läuft rein Serverseitig. Dem PHP ists total egal was für ein Browser darauf zugreift.
So auf die Schnelle einige mögliche Punkte (unvollständige Liste)
- Du hast irgendwelche Scripts die Browserseitig ablaufen (also nicht PHP)
- Dein Provider hat was an seinem Server geschraubt. (Hatte ich auch schon - eine kurze Anfrage an den Provider und er hats gefixt)
- Dein HTML ist nicht sauber---------------------------------------------------------------------------------------------------
item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
item: Tutorial: [PHP][MySQL] Debug Queries
item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben
-
Das es dem Server egal ist hatte ich auch gedacht aber anderst kann ichs mir nicht erklären.
Code kann ich leider nicht zeigen weils ein Firmenprojekt ist.
Zu den Punkten: Erstmal Danke.
1. Ich habe ein Script in JavaScript, das wird aber nur ausgeführt, wenn ich auf einen Button klicke (Führt per Request ein PHP-Script aus, das wiederum Daten zurückliefert). Das Funktioniert aber im Internet Explorer ohne Probleme****** Kann es sein das t.dem hier das Problem liegt und Firefox das einfach nicht so abarbeitet wie er es soll? (Dieses JavaScript könnte ich hochladen (siehe weiter unten))
2. Provider kann es nicht sein weil das Projekt auf dem eigenen Server läuft.
3. Kann ich nicht hundertprozentig sagen, aber ich denke eigentlisch schon das es sauber ist. Immerhin achte ich stark darauf!!
Code javascript:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
function request(ElementID, Url) { if (window.XMLHttpRequest) { myAjax = new XMLHttpRequest(); } else { //Dieser Code wird als Fallback für den IE5 und IE6 benötigt, da diese die obrige Schreibweise nicht unterstützen. myAjax = new ActiveXObject("Microsoft.XMLHTTP"); } myAjax.onreadystatechange=function() { if (myAjax.readyState==4 && myAjax.status==200) { document.getElementById(ElementID).innerHTML = myAjax.responseText; } else { } }; myAjax.open("POST", Url, true); myAjax.send(); }
Ist doch eigentlich ein Standart-Code oder? Sollte er doch einwandfrei machen. In anderen Projekten tut er es ja auch
-
Zum Javascript kann ich dir nix sagen. Aber das Problem ist mMn am ehesten da. Denn das wird vom Browser ausgeführt. Wenn du willst könnte ich den Thread mal ins JavaScript-Forum verschieben. Dort tummeln sich mehr JavaScript-Spezialisten herum.
---------------------------------------------------------------------------------------------------
item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
item: Tutorial: [PHP][MySQL] Debug Queries
item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben
-
03.02.12 23:31 #6Ch Tutorials.de Gastzugang
Kann jetzt nicht wirklich viel erkennen. Interessant wäre jetzt der Anfrage Header (zu sehen über Firebug) und der Antwort Header (zu sehen über Firebug).
-
anfrage-header:
HTTP/1.1 200 OK
Date: Mon, 06 Feb 2012 09:48:06 GMT
Server: Apache/2.2.14 (Win32) DAV/2 mod_ssl/2.2.14 OpenSSL/0.9.8l mod_autoindex_color PHP/5.3.1 mod_apreq2-20090110/2.7.1 mod_perl/2.0.4 Perl/v5.10.1
X-Powered-By: PHP/5.3.1
Content-Length: 2210
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive
Content-Type: text/html
antwort-header:
HTTP/1.1 200 OK
Date: Mon, 06 Feb 2012 09:48:06 GMT
Server: Apache/2.2.14 (Win32) DAV/2 mod_ssl/2.2.14 OpenSSL/0.9.8l mod_autoindex_color PHP/5.3.1 mod_apreq2-20090110/2.7.1 mod_perl/2.0.4 Perl/v5.10.1
X-Powered-By: PHP/5.3.1
Content-Length: 2210
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive
Content-Type: text/html
zum verschieben:
wenn das sinnvoll ist, wäre es ne nette Geste.Geändert von fbfeix (06.02.12 um 10:56 Uhr)
-
06.02.12 16:20 #8Ch Tutorials.de Gastzugang
Also das mit den header kann nicht sein.
Wo sind denn im Anfrage Header diese Punkte z.B.?
Code :1
X-Requested-With XMLHttpRequest
Code :1
Accept text/html, */*; q=0.01
-
"200 OK" in der Anfrage ist doch auch etwas seltsam

Das ist der Antwortheader doppelt.Netiquette (vA §15) und Nutzungsregeln (vA §4.8) einhalten! Programmcode in Codetags/Codeboxen.
Sehr gute Beiträge bitte Bewerten (Stern darunter oder "Danke").
"Funktioniert nicht" ist zu ungenau! Code, Fehlermeldungen, Verhalten des Programms, ...?
-
06.02.12 23:59 #10
- Registriert seit
- Oct 2004
- Ort
- Leipzig
- Beiträge
- 589
Das muss auch nicht drinne stehen, jQuery schreibt das x-requested-with selber in den Header mit rein.
Dies kann auch man auch bequem selber machen, was auch von Vorteil ist um einen AJAX Request zu erkennen auf Server Seite.
Code :1
xmlhttpRequest.setRequestHeader('foobar', 'qwert');
Und schon kannst im Anfrage Header foobar qwert lesen. Sinnvolle Namen natürlic hier von Vorteil.
-
07.02.12 06:54 #11Ch Tutorials.de Gastzugang
Ist ja richtig, trotzdem sind es zwei Antwortheader(zumindest habe ich noch keinen Anfrageheader gesehen, der sich selber antwortet...
), intressant wäre natürlich auch die Antwort vom Server.
Ich kann natürlich tolle Geschichten in den Header schreiben, aber macht das Sinn? Ich benutze das "X-Requested-With" um wie du schon schreibst einen Ajaxrequest zu erkennen. Was z.B. sehr schön ist um in einer Funktion unterschiedliche Ausgaben zu handeln. Mit dieser Methodik lässt sich schön eine Barrierefreiheit umsetzen.
Hinzu kommt das Accept so kann ich erkennen, was die Anfrage als Antwort erwartet, z.B. json, xml oder reines html oder oder. Andernfalls also wird ein falschen Format zurückgegeben gibt es einen Fehler, was dann ja auch in meinen Augen Sinn macht.
Weiterhin sind von Vorteil "Accept-Language", "Host", "Referer", "User-Agent" will man z.B. eine Session erneuern oder eine csrf Protection einsetzen oder man hat einen xss Filter um Cross Site Scripting zu verhindern.
Ich kann nur raten ein JS Framework einzusetzen, das spart Zeit und Nerven und das Tolle ist es funktioniert auch.
Aber zurück zum Thema, ich denke hier gibt es mehreere Probleme.
Wei wird die CSV eingelesen?Funktionierte gestern nicht. Er gab mir immer meine Fehlermeldung aus, dass die Datei das falsche Format habe.
hört sich für mich eindeutig nach eine JS Fehler an. z.B. eine Funktion die vorm DOM aufgerufen wird.Wenn ich bei der Datenübersicht auf den Knopf zum Speichern klicke hängt sich die Website auf und ich kann nirgendwo mehr klicken,Geändert von Ch (07.02.12 um 07:17 Uhr)
-
Oh tut mir leid.
Hier nochmal beide:
Antwort-Header
Accept-Ranges bytes
Content-Length 1242
Content-Type application/javascript
Date Mon, 06 Feb 2012 08:42:08 GMT
Etag "20000000262e2-4da-4b00863aebe90"
Last-Modified Mon, 24 Oct 2011 09:53:05 GMT
Server Apache/2.2.14 (Win32) DAV/2 mod_ssl/2.2.14 OpenSSL/0.9.8l mod_autoindex_color PHP/5.3.1 mod_apreq2-20090110/2.7.1 mod_perl/2.0.4 Perl/v5.10.1
Anfrage-Header
Accept */*
Accept-Charset ISO-8859-1,utf-8;q=0.7,*;q=0.7
Accept-Encoding gzip, deflate
Accept-Language de-de,de;q=0.8,en-us;q=0.5,en;q=0.3
Connection keep-alive
Host localhost
Referer http://localhost/labor/index.php
User-Agent Mozilla/5.0 (Windows NT 6.1; WOW64; rv:9.0.1) Gecko/20100101 Firefox/9.0.1
-
07.02.12 07:20 #13Ch Tutorials.de Gastzugang
Dein Antwort Header ist wahrscheinlich zu kurz. Wie setzt du in den? Ein Beispiel wäre so.
außerdem willst du bestimmt kein Js zurückgegeben, also fehlt noch die Header Anweisung.PHP-Code:header('Content-length: ' . strlen('mein ganz langer String den ich aus der CSV eingelesen habe'));
z.B.
PHP-Code:header('Content-type: text/html; charset=UTF-8' );
Geändert von Ch (07.02.12 um 07:24 Uhr)
-
Oke stimmt. Aber muss ich den das immer angeben? Bisher habe ich das nur gemacht, wenn ich Bilder mit PHP erstellt habe, ansonsten nirgendwo und es hat trotzdem immer gepasst.
-
07.02.12 07:48 #15Ch Tutorials.de Gastzugang
So habe selber noch mal gelesen, also es ist eine "Kann" Option. Zumindest gibt es aber auch kein "HTTP/1.1 200 OK" zurück. Also solltest du mal alles überprüfen.
1. stimmt die Anfrage, wird sie vom Php Skript entgegen genommen
2. Wird die Anfrage bearbeitet und wirft keine Fehler?
3. stimmt die Ausgabe?
Aber erkläre doch mal, was du zurück gibst usw. poste doch mal die Ausgabe vom Php Skript, muß ja nicht vollständig sein. Ansonsten bleibt uns hier nur die Glaskugel....
Geändert von Ch (07.02.12 um 08:01 Uhr)
Ähnliche Themen
-
Seltsames Div verhalten
Von nchristoph im Forum CSSAntworten: 5Letzter Beitrag: 11.11.10, 11:04 -
IE7-Bug: OnMouseOut - seltsames Verhalten
Von JavaUncle im Forum Javascript & AjaxAntworten: 4Letzter Beitrag: 21.01.08, 17:52 -
DIV Layout, seltsames Verhalten vom IE
Von vert0r im Forum CSSAntworten: 16Letzter Beitrag: 02.07.07, 21:55 -
Seltsames Verhalten bei Key events
Von n8mensch im Forum .NET CaféAntworten: 3Letzter Beitrag: 29.03.07, 17:26 -
Seltsames Verhalten bei Tabellen in Div
Von rethus im Forum CSSAntworten: 3Letzter Beitrag: 27.12.06, 16:07





Zitieren



Login





