PHP Mysql Formular

  • #1
E

Ernesto_TF

Guest
Hallo Deutschland,

gibt es ein Allheilmittel gegen folgendes Problem:
  • PHP Dokument mit Formular
    Anwender führt im Namen ein Hochkomma (Italiener bspw.)
    Eintrag in Mysql nicht möglich
Das selbe passiert natürlich auch bei den Anführungszeichen. Während auf meinem Localhost nichts passiert, respektive ein Backslash vor diese Zeichen gesetzt werden, ernte ich in Realmodus nur eine Fehlermeldung und der Eintrag wurde in Mysql nicht vorgenommen.

Jetzt checke ich mittels PHP....

$array = array chr(34) => chr(32),chr(44) => chr(32));
$vari = strtr($vari, $array);


.... jedes Formularfeld und lasse derartige Zeichen vorher gegen ein Blank austauschen. Und frage mich natürlich, ob es da nicht etwas eleganteres gibt, dass ich mal wieder nicht kenne :-[

Für jeden guten und schnellen Tipp in ewiger Dankbarkeit
 
  • #2
Hi,

dann ist bei dir local wohl magic_quotes aktiv, schau mal in deine php.ini :)

; Magic quotes
;

; Magic quotes for incoming GET/POST/Cookie data.
magic_quotes_gpc = Off

; Magic quotes for runtime-generated data, e.g. data from SQL, from exec(), etc.
magic_quotes_runtime = Off

; Use Sybase-style magic quotes (escape-> with->' instead of \').
magic_quotes_sybase = Off


Alternativ könntest du addslashes() verwenden, siehe http://de3.php.net/manual/de/function.addslashes.php
 
  • #3
  • #4
AHA!? ::)

Dann bin ich auf dem Localhost also happy (Kontrolle zur Zeit nicht möglich, da anderes Büro) und online bin ich da außen vor?

Kann man so etwas online auch bewerkstelligen oder muß ich meinen o.g. Weg gehen - bei dem übrigens eine Klammer ( fehlt - ?

Ich hatte auch hier die Zeichen ausgeschrieben (Hochkomma und Anführungsstriche) und mein Posting wurde mit ner Fehlermeldung abgeschmettert!

Sonnige Grüsse
 
  • #5
Schaue dir mal die Befehle addslashes und stripslashes an.
 
  • #6
Danke an alle :)

Da mir der Slash auch nicht gefallen hat, hab ich mich nun doch entschieden meinen o.g. Weg zu gehen. Zumal niemand virtuell in Ohnmacht gefallen ist. Ein schlichtes Blank sieht eventuell besser aus, als ein Da\' Vito oder so.

Das ist jetzt zwar nicht die nette Art nach Problemloesungen zu fragen und nachher doch alles besser zu wissen, aber....... ja ich weiss auch nicht!

Wenn sich dennoch jemand dafuer erwaermen koennte meine abschliessende Frage zu beantworten, waere das umso grosszuegiger:

Muss ich ausser den Anfuehrungszeichen und dem Hochkomma noch andere Zeichen aussortieren, oder wars das?

Danke, und wie meistens, sonnige Gruesse
 
  • #7
Hi,

die Slashes werden nicht mit in der Datenbank gespeichert, sondern sie sorgen dafür, dass du-> und ohne Fehlermeldung in die Datenbank schreiben kannst.
 
  • #8
:-[
Oh - ich Depp! Das hab ich natuerlich gar nicht erst ausprobiert. Weil ich mit echo $variable den Slash noch gesehen hab!

Jetzt hab ich das meiste schon umgeschrieben. :p

P.s.: Ich war gerade auf diesem Thread, habe vertraeumt auf Antworten gewartet, Deinen (PCD Bjoern) Globus angeklickt, ein paar Frechheiten in Dein Gaestebuch geschrieben und bin gnadenlos auf 404 gelandet, als ich es eintragen wollte. Was soll das heissen? Gaestebuch kaputt oder gegen Frechheiten impraegniert?
 
  • #9
oh, dann is da wohl irgendwas kapput gegangen, danke für den Hinweis :)
 
Thema:

PHP Mysql Formular

ANGEBOTE & SPONSOREN

Statistik des Forums

Themen
113.838
Beiträge
707.961
Mitglieder
51.491
Neuestes Mitglied
haraldmuc
Oben