Ich versuche, Daten in eine Tabelle einzufügen, die sowohl Anführungszeichen als auch doppelte Anführungszeichen enthält. Wie kann ich ihnen entkommen?Mysql PHP einfügen mit Anführungszeichen und Anführungszeichen
Der Wert i hinzugefügt werden soll ist:
default=1,name='Bob',lastName="Jones"
$ins = "INSERT into table (field1,field2,fiel3,) values ('data1','data2',????)";
Wenn ich Apostroph verwenden, wird der Bob Teil gebrochen. Wenn ich ein Anführungszeichen verwende, wird der Jones-Teil gebrochen.
Wenn ich mysql_escape_string verwende, wie würde das aussehen?
$data3 = mysql_escape_string(????);
Wenn ich ein einzelnes Zitat verwende, wird der Bob Teil gebrochen. Wenn ich ein Anführungszeichen verwende, wird der Jones-Teil gebrochen.
Ich kenne es ein schreckliches db-Design, aber ich habe keine Kontrolle über die Felder, die ich hinzufügen oder die Syntax der Werte. Ich muss den Wert genau wie oben gezeigt einfügen.
Ich bin nur neugierig, warum Sie das tun wollen würde. –
** ACHTUNG **: Wenn Sie nur PHP lernen, lernen Sie bitte nicht die veraltete [mysql_query'] (http://php.net/manual/en/function.mysql-query.php) Schnittstelle. Es ist schrecklich und wurde in PHP 7 entfernt. Ein Ersatz wie [PDO ist nicht schwer zu erlernen] (http://net.tutsplus.com/tutorials/php/why-you-should-beusing-phps-pdo- for-database-access /) und ein Leitfaden wie [PHP The Right Way] (http://www.phptherightway.com/) hilft Best Practices zu erklären. Machen Sie ** sicher ** Ihre Benutzerparameter sind [richtig maskiert] (http: // bobby-tables.com/php) oder Sie werden mit schweren [SQL injection bugs] (http://bobby-tables.com/) enden. – tadman
@ Fred-ii- weil die db, dem ich Daten hinzufüge, von clowns entworfen wurde .... irgendein guter db würde Feld 3 in einzelne Felder, aber nicht diese db trennen ..... – bart2puck