addslashes mit einer Select...WHERE

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • fireweasel
    replied
    Originally posted by Koda View Post
    Guten Abend

    Ich habe heute ein Problem wo ich irgendwie auf dem Schlauch stehe. Ich trage diverse Werte in eine Datenbank ...

    Soweit so gut. Nun möchte ich im Script abfragen, ob dieser Wert schonmal jemand eingetragen hat. mit SELECT * WHERE name = '".addslashes($_REQUEST['field'])."'

    ...
    Als Ergänzung: Wenn du den SELECT nur brauchst, um doppelte Einträge zu vermeiden, ist es meistens einfacher, diese Arbeit der Datenbank zu überlassen. Dazu gibst du den gewünschten Spalten beim Erstellen der Tabelle die Einschränkung UNIQUE mit. Danach wird jeder INSERT, der Dubletten enthält von der Datenbank abgewiesen.

    Einführung in SQL: DDL - Einzelheiten ? Wikibooks, Sammlung freier Lehr-, Sach- und Fachbücher

    Leave a comment:


  • h3ll
    replied
    Die mysql_* Funktionen sind übrigens veraltet und sollten nicht mehr verwendet werden. Als Nachfolger gibt es mysqli und PDO.

    Leave a comment:


  • Koda
    replied
    Hi

    Danke. Mit mysql_real_escape_string klappt es

    Gruss

    Koda
    Last edited by Koda; 05-03-2015, 19:27.

    Leave a comment:


  • wahsaga
    replied
    Originally posted by Koda View Post
    Soweit so gut.
    Nein, soweit so schlecht.

    addslashes ist dafür weder vorgesehen noch geeignet. Nutze die Maskierungs-Funktion, die die Datenbank-Erweiterung dafür vorsieht. (Und diese Erweiterung sollte, sofern es um eine MySQL-Datenbank geht, MySQLi oder PDO sein, die MySQL-Erweiterung ist seit längerem deprecated.)

    Oder nutze gleich prepared statements.

    Leave a comment:


  • Koda
    started a topic addslashes mit einer Select...WHERE

    addslashes mit einer Select...WHERE

    Guten Abend

    Ich habe heute ein Problem wo ich irgendwie auf dem Schlauch stehe. Ich trage diverse Werte in eine Datenbank welche vorher mit addslashes Maskiert werden.

    Soweit so gut. Nun möchte ich im Script abfragen, ob dieser Wert schonmal jemand eingetragen hat. mit SELECT * WHERE name = '".addslashes($_REQUEST['field'])."'

    Bei einem Namen wie Tina funktioniert dies wunderbar. Ich habe nun Testweise sowas verwendet ohne ": "Tina '0?'^'äö$}"
    Hier ist nun das Problem, das er mit das nicht als bereits eingetragen erkennt obwohl es vorher eingetragen wurde.

    Wie kann ich das bewerkstelligen?

    Gruss und Danke

    Koda
Working...
X