CronJob-Service
bei SELFPHP mit ...
|
+ minütlichen Aufrufen
+ eigenem Crontab Eintrag
+ unbegrenzten CronJobs
+ Statistiken
+ Beispielaufrufen
+ Control-Bereich
Führen Sie mit den CronJobs von
SELFPHP zeitgesteuert Programme
auf Ihrem Server
aus. Weitere Infos

|
:: Anbieterverzeichnis ::
Globale Branchen
Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP 
:: Newsletter ::
Abonnieren Sie hier den kostenlosen
SELFPHP Newsletter!
|
PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden |

02.03.2010, 17:10:27
|
Anfänger
|
|
Registriert seit: Feb 2006
Alter: 36
Beiträge: 96
|
|
Session wird lokal (WAMP) korrekt druch geführt, auf Server online nicht
Hallo,
mein Problem ist, dass bei mir eine Session lokal korrekt auf allen eingebundenen Seiten funktioniert, aber online PHP rummeckert, dass die Session bereits gestartet wäre.
Zudem kommt auch noch eine Meldung über einen Syntax-Fehler, welche nur online erscheint.
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /www/htdocs/w00b1302/admin/arbeit.php:1) in /www/htdocs/w00b1302/admin/sicherheit/checkuser.php on line 2
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '\'willkommen\'' at line 3
Ich denke Mal, dass es an unterschiedlichen PHP.ini-Einstellungen liegt, aber leider will der Anbieter sie nicht rausrücken.
Wisst ihr, welche Einstellungen dafür verantwortlich sein können?
|

02.03.2010, 17:47:37
|
SELFPHP Profi
|
|
Registriert seit: Apr 2008
Alter: 49
Beiträge: 1.938
|
|
AW: Session wird lokal (WAMP) korrekt druch geführt, auf Server online nicht
es ist kein session-problem; du suchst in der falschen ecke der anwendung.
1. es wird ein syntax-fehler in einem sql-statement festgestellt:
Zitat:
You have an error in your SQL syntax
|
2. der fehler wird ausgegeben, statt in ein file geloggt; schau dir dazu folgende anweisungen an:
PHP-Code:
ini_set( 'display_errors' , 'on/off' );
ini_set( 'log_errors' , 'on/off' );
3. es gibt ein problem mit dem session cache limiter, da bereits eine ausgabe (siehe 2.) vor session_start stattgefunden hat:
Zitat:
Bei Verwendung Cookie-basierter Sessions müssen Sie session_start() aufrufen, bevor irgend etwas an den Browser geschickt wird.
|
cx
|

02.03.2010, 19:56:24
|
Anfänger
|
|
Registriert seit: Feb 2006
Alter: 36
Beiträge: 96
|
|
AW: Session wird lokal (WAMP) korrekt durch geführt, auf Server online nicht
Ja, die Fehlermeldungen habe ich gelesen und verstanden. :-)
Dummerweise funktioniert es aber bei mir lokal und und online gibt es diese Meldungen. Da muss ich halt in den sauren Apfel beißen und durch Trial & Error herausfinden, was das verursacht.
Weißt Du, woher der Unterschied kommt? Ich habe ja error_reporting(E_ERROR | E_WARNING | E_PARSE); genutzt, aber bei mir kommt da keine Meldung.
Mich wunderts besonders bei session_start, da ich mir durchaus dieser Eigenheit bewusst bin und darauf geachtet habe. Aber anscheinend sieht es der Server anders...
Gruß
/E
Alles klar: Der Server hängt aus irgend einem Grunde ein "\" ran.
Der SQL-Befehl lautet so UPDATE text SET * WHERE `typ`=\'willkommen\' und dann kommt eines zum anderen...
Mal gucken, ob ich ihn das abgewöhnen kann. XD
|

02.03.2010, 21:10:48
|
 |
Senior Member
|
|
Registriert seit: Feb 2006
Ort: Wallrabenstein
Alter: 56
Beiträge: 1.044
|
|
AW: Session wird lokal (WAMP) korrekt druch geführt, auf Server online nicht
mysql_real_escape ist dein Schlagwort für die Suche
|

02.03.2010, 21:31:32
|
Anfänger
|
|
Registriert seit: Feb 2006
Alter: 36
Beiträge: 96
|
|
AW: Session wird lokal (WAMP) korrekt druch geführt, auf Server online nicht
Das macht es bei mir seltsamerweise noch schlimmer.
Aus z.B. SELECT '*' From`tabelle` WHERE `id`='5' wird dann SELECT \'*\' From`tabelle` WHERE `id`=\'5\' und SQL meckert.
Und was noch seltsamer ist, ist dass session_start selbst dann rummeckert, wenn ich die Datei, wo es diese Probleme gibt, komplett lehre und nur session_start drinnen lasse.
/E
Ey neh, bescheuerter geht es nicht, oder? Ich habe require( 'checkuser.php') geschrieben. Nur dieses Leerzeichen hat bei diesem Server dafür gesort, dass es eine Fehlermeldung gab. Welche Einstellung ist denn dafür verantwortlich?
Jetzt bleibt nur noch die Geschichte mit MySQL. Ich habe per str_replace das "\" rausgeholt, aber das kann ja keine wirkliche Lösung sein.
Geändert von Ichthys (02.03.2010 um 21:55:53 Uhr)
|

03.03.2010, 00:40:48
|
 |
Senior Member
|
|
Registriert seit: Feb 2006
Ort: Wallrabenstein
Alter: 56
Beiträge: 1.044
|
|
AW: Session wird lokal (WAMP) korrekt druch geführt, auf Server online nicht
Also ich frag mich gerade wo deine Query eigentlich herkommt. Der Fehler, den du beschreibst entsteht überwiegend bei GET und POST Daten. Somit also auch bei REQUEST.
mysql_real_escape_string()
Zitat:
Hinweis: Ist magic_quotes_gpc aktiviert, wenden Sie zuerst stripslashes() auf die Daten an. Das Bearbeiten bereits in irgend einer Form maskierter Daten durch mysql_real_escape_string führt ansonsten dazu, dass bereits Maskiertes doppelt maskiert wird.
|
Nehme ich dein erstes Beispiel
Zitat:
Alles klar: Der Server hängt aus irgend einem Grunde ein "\" ran.
Der SQL-Befehl lautet so UPDATE text SET * WHERE `typ`=\'willkommen\' und dann kommt eines zum anderen...
Mal gucken, ob ich ihn das abgewöhnen kann. XD
|
würde ich behaupten, daß dein PHP-Code so aussieht.
PHP-Code:
$sql = "UPDATE text SET * WHERE `typ`= $_GET['text']";
Was bei mir allerdings gerade die Frage aufwirft, was * in diesem Fall bringen soll?
Ich würde dich daher mal bitten den entsprechenden Code zu posten. Meine Kristallkugel beschlägt langsam.
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
Themen-Optionen |
|
Ansicht |
Linear-Darstellung
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 05:14:23 Uhr.
|