Übergabe von Variablen in der URL
meisterB
- php
0 Fabian St.0 meisterB0 Fabian St.
Hallo Leute,
ich habe mal wieder ein kleines Problem.
Ich habe im PHP ein Array, welches jetzt in die SQL Datenbank soll.
Mit serialize hab ich es in einen String umgewandelt. Jetzt wollte ich es mit der URL an die Datei übergeben, welche den String in die Datenbank schreiben sollte. Die URL stoppt aber an einer Stelle des Strings, an der ich ein " vermute! Wie kann ich das umgehen, ohne auf das eintragen in der Extradatei zu verzichten??
Danke im Vorraus für eure Hilfe!
MFG Sebstian
Hi!
ich habe mal wieder ein kleines Problem.
Ich habe im PHP ein Array, welches jetzt in die SQL Datenbank soll.
Mit serialize hab ich es in einen String umgewandelt. Jetzt wollte ich es mit der URL an die Datei übergeben, welche den String in die Datenbank schreiben sollte. Die URL stoppt aber an einer Stelle des Strings, an der ich ein " vermute! Wie kann ich das umgehen, ohne auf das eintragen in der Extradatei zu verzichten??
Du solltest den serialisierten String noch mit urlencode() behandeln.
Grüße,
Fabian St.
Genau, das war die Lösung für den ersten Teil!!!
Jetzt hab ich aber ein anderes Problem: Wie bekomm ich das in die Datenbank?? Ein Feld mit dem Typ "TEXT" nimmt ebenfalls keine ".
Wäre super wenn ich auch hier noch nen Tip bekommen könnte!#
Danke im Vorraus!
MFG Sebastian
Hi!
Genau, das war die Lösung für den ersten Teil!!!
Jetzt hab ich aber ein anderes Problem: Wie bekomm ich das in die Datenbank?? Ein Feld mit dem Typ "TEXT" nimmt ebenfalls keine ".
Natürlich kann in einem Feld 'TEXT' auch ein Anführungszeichen vorkommen. Du solltest dir jedoch Gedanken machen, wie du den String für den Eintrag entsprechend vorbereitest. mysql_real_escape_string() bereitet deine Daten so auf, dass es zu keinen Konflikten kommen sollte und dabei auch SQL-Injections verhindert werden. Zum Decodieren deines urlcodierten Strings kannst du im übrigen urldecode() verwenden.
Grüße,
Fabian St.
echo $begrüßung;
Zum Decodieren deines urlcodierten Strings kannst du im übrigen urldecode() verwenden.
Das ist nicht nötig, da das doch nach der Übertragung schon decodiert wieder in $_GET steht.
echo "$verabschiedung $name";
Hi dedlfix!
Zum Decodieren deines urlcodierten Strings kannst du im übrigen urldecode() verwenden.
Das ist nicht nötig, da das doch nach der Übertragung schon decodiert wieder in $_GET steht.
Stimmt, sorry, hatte ich vergessen.
Grüße,
Fabian St.
Mm, irgendwie komm ich nicht weiter. Der Wert im String ist okay:
a:7:{i:2005;s:6:"131231";i:2006;s:6:"213543";i:2007;s:6:"123121";i:2008;s:6:"342131";i:2009;s:6:"123154";i:2010;s:6:"135431";i:2011;s:6:"132135";}
Aber beim Eintragen kommt er nur bis
a:7:{i:2005;s:6:\
auch das mysql_real_escape_string()hat mich nict weiter gebaracht. er hat dann nur mehr \ vor das " gemacht. HILFE!!!
echo $begrüßung;
Mm, irgendwie komm ich nicht weiter. Der Wert im String ist okay:
a:7:{i:2005;s:6:"131231";i:2006;s:6:"213543";i:2007;s:6:"123121";i:2008;s:6:"342131";i:2009;s:6:"123154";i:2010;s:6:"135431";i:2011;s:6:"132135";}
Nein, ist er nicht. Der sieht so aus, als ob diese unsäglichen Magic quotes eingeschaltet sind.
Du kannst entweder in der Konfiguration magic_quotes_gpc (und ..runtime gleich mit) ausschalten oder dich stripslashes() bedienen.
echo "$verabschiedung $name";