[GastForen Programmierung/Entwicklung PHP und MySQL Apostroph (') im Formularfeld verhindert Eintrag in Datenbank

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Themen
Beiträge
Moderatoren
Letzter Beitrag

Apostroph (') im Formularfeld verhindert Eintrag in Datenbank

macmac
Beiträge gesamt: 394

2. Okt 2019, 12:01
Beitrag # 1 von 3
Bewertung:
(46925 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Guten Tag zusammen
Ich bin am Rotieren und kann dieses Problem zur Zeit nicht lösen, weil ich ziemlich nervig bin, denn das Formular muss jetzt online.

In einem Textfeld kann man alles eingeben, jedoch verindert das Apostroph (') die Übergabe an die Datenbank.

Ich habe folgenden Zeichenersatz ins Kontrollfile geschrieben.

$tag = array("\"", "\'");
$replace = array("ˮ", "ʼ");

$htext=str_replace($tag, $replace, $htext);

Ich weiss nicht wie ich das Apostroph ersetzen kann, es blockiert die Eingabe, weil es als Befehlszeichen gesehen wird(??). --> Fehlerausgabe: 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 'Text'')' at line 1

Kann mir jemand einen Tipp geben? Es gibt sicher andere, die die typografischen Zeichen auf der Tastatur auch ersetzt haben.

Danke für euren Rat.
| -------------------------------------------------------------- |
X

Apostroph (') im Formularfeld verhindert Eintrag in Datenbank - Gelöst

macmac
Beiträge gesamt: 394

2. Okt 2019, 14:43
Beitrag # 2 von 3
Beitrag ID: #572048
Bewertung:
(46902 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
So, gelöst: Folgende Änderung hat nun funktioniert:

NEU: $tag = array("\"", "'");

ALT: $tag = array("\"", "\'"); -> vor dem Apostroph das \ weggelassen.

Ersetzt mit: $replace = array("ˮ", "ʹ");

Dies hat nun geholfen - je nach Schriftsatz halt in der Darstellung unterschiedlich. Aber der Eintrag wird nicht mehr geblockt.

Viellciht gibt es da aber eine einwandfreie Lösung - gerne lerne ich dazu.

Gruss Macmac


als Antwort auf: [#572047]

Apostroph (') im Formularfeld verhindert Eintrag in Datenbank - Gelöst

crisies
  
Beiträge gesamt: 133

14. Okt 2019, 14:06
Beitrag # 3 von 3
Beitrag ID: #572267
Bewertung:
(46527 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hi MacMac,

Denke deine Lösung wäre "prepared statements" oder mysql_real_escape_string oder ähnliches. Die User-Werte welche ungefiltert in die DB gehen, müssten zwingend maskiert werden, damit Du dir dort kein Loch aufmachst. Dazu gibt es eben diese DB eigenen Methoden, welche dafür verwendet werden sollten.

mfg
chris.w

*************************************
Chris Würsch
http://www.chriswuersch.com
*************************************


als Antwort auf: [#572048]

Aktuell

Veranstaltungskalender

Hier können Sie Ihre Anlässe eintragen, welche einen Zusammenhang mit den Angeboten von HilfDirSelbst.ch wie z.B. Adobe InDesign, Photoshop, Illustrator, PDF, Pitstop, Affinity, Marketing, SEO, Büro- und Rechtsthemen etc. haben. Die Einträge werden moderiert freigeschaltet. Dies wird werktags üblicherweise innert 24 Stunden erfolgen.

pdf-icon Hier eine kleine Anleitung hinsichtlich Bedeutung der auszufüllenden Formularfelder.

Veranstaltungen
02.02.2023

Prozesse optimieren und effizient gestalten

Zürich
Donnerstag, 02. Feb. 2023, 08.00 - 10.00 Uhr

Digitalisierung, Webauftritt

Digitalisierung mitgestalten - Worauf kommt es an? Wie wichtig ist die Webseite? Webseite mit Word Press? Interne Prozesse optimieren

Ja

Organisator: B. Isik - SNF Academy

Kontaktinformation: Birol Isik, E-Mailinfo AT bkcc DOT ch

https://digitalisierung-heute.ch/digitalisierung-informationstag-schweiz/

Veranstaltungen
01.03.2023 - 09.03.2023

Online
Mittwoch, 01. März 2023, 00.00 Uhr - Donnerstag, 09. März 2023, 00.00 Uhr

Online Webinar

Wie gehen wir mit diesen Veränderungen um? Was ist notwendig, damit wir die Digitalisierung im Unternehmen klappt? Veränderungsprozesse verstehen und entsprechend handeln Mitarbeiter als Botschafter Webseite mit WordPress erstellen SEA /SEO (Ads aufschalten)

Ja

Organisator: B. Isik - SNF Academy

Kontaktinformation: B. Isik, E-Mailinfo AT snfa DOT ch

https://www.fernstudiumfitness.ch/digitalisierung-schweiz/