problem mit query -> apostroph

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • problem mit query -> apostroph

    Hallo zusammen

    Ich hab ein kleines News-System gebastelt (schon eine weile her)

    nun wird aber nichts eingetragen, sobald ich im text ein apostroph ( ' ) drinn habe.

    mein Code:

    PHP-Code:
    mysql_query ("INSERT INTO `news_neu`
                                    (
                                       `titel`,
                                       `news`,
                                       `date`
                                    )
                                    VALUES
                                    (
                                        '"
    .$titel."',
                                        '"
    .$news."',
                                        '"
    .$date."'
                                    )
                    "
    ) or die (mysql_error()); 
    gibt es dafür eine andere möglichkeit, als das apostroph in der db in html-code (ascii-code) umzuwandeln?


    Gruss marco

    ps: wenn ich eine news eingebe, ohne apostroph werden sie eingetragen!

  • #2
    http://de.php.net/Addslashes

    Gruss Sebastian

    Kommentar


    • #3
      danke erstmal für deine antwort sebastian!

      mein wunsch wäre aber eben, dass ich nur beim eintragen etwas ändern muss, und die ausgabe so behalten kann.
      da bereits einige hundert einträge in der db sind, würde es dort gewisse probleme mit den backslashes geben!

      ich versuchs mal mit str_replace

      hat mir jemand den html-code für das apostroph zeichen?
      '
      und NICHT
      `

      Kommentar


      • #4
        da ich meinen eigenen foren-beitrag nicht editieren kann, hier meine lösung:

        PHP-Code:
        $news str_replace("'""’"$news); 

        Kommentar


        • #5
          Original geschrieben von Sebastian.J
          http://de.php.net/Addslashes
          Bullshit.

          mysql_real_escape_string ist dafür zuständig, und sonst nichts.
          I don't believe in rebirth. Actually, I never did in my whole lives.

          Kommentar


          • #6
            Hmm, wenn ich´s Manual richtig verstehe, ist mysql_real_escape_string eher für Queries gedacht wobei addslashes allgemeiner gehalten ist. (Klar, funktionieren tut beides).

            Aber er hat ja schon einträge in der Datenbank und will lediglich die quotes aus einem Attribut entfernen. Mein Vorschlag daher: Wert aus DB auslesen, mit addslashes($deinen_text) ausgeben lassen, schon sollten alle auf der HTML-Seite korrekt angezeigt werden.
            Nur wenige wissen, wieviel man wissen muss, um zu wissen, wie wenig man weiß.

            Kommentar


            • #7
              Original geschrieben von ArSeN
              Hmm, wenn ich´s Manual richtig verstehe, ist mysql_real_escape_string eher für Queries gedacht
              Ja, eben.
              Und mit diesen liegt hier in erster Linie ein dringendes Problem vor, und auf dieses gibt es nur eine Reaktionsmöglichkeit - mysql_real_escape_string.
              wobei addslashes allgemeiner gehalten ist. (Klar, funktionieren tut beides).
              Allgemeiner gehalten ist gut - es ist für diesen Zweck schlicht und einfach nicht gedacht, und möglicherweise auch ungeeignet.
              Aber er hat ja schon einträge in der Datenbank und will lediglich die quotes aus einem Attribut entfernen.
              Ja, das ist ein Folgeproblem.

              Aber auf dieses bezog sich Sebastian ja wohl kaum.
              I don't believe in rebirth. Actually, I never did in my whole lives.

              Kommentar

              Lädt...
              X