[PHP5] mysql_real_escape_string

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

  • [PHP5] mysql_real_escape_string

    Hallo leute,

    ich haben eine Seite, auf der die Variable vname eingegeben werde muss in ein insert feld. dann wird mit submit und der methode post an diese seit
    hier übergeben. Das scrip hat funktioniert und dann hatten mich einlige leute daran angesprocehn das das ein no go ist das ich das net gegen SQL Injection abgesichert habe. nun gut habe mich erkundigt bissel und gegoogelt.. und zum entschulss gekommen wenn ich mysql_real_escape_string einbaue ist schon relativ sicher..... also bessser also davor!!

    mein prob ist ich habe immer ein fehlermeldung... das mmein code
    PHP-Code:
    <?php 
        $host 
    "loc"
        
    $user "and"
        
    $pass "123"
        
    $database "pro"
        
    $dz mysql_connect($host$user$pass); 
        
    mysql_select_db($database$dz); 
       
      
    $sql="INSERT INTO daten (vname) 
        VALUES 
        mysql_real_escape_string(
    $_POST[vname])"
         
        if (!
    mysql_query($sql,$dz)) 
      { 
      die(
    'Error: ' mysql_error()); 
      } 
    echo 
    "1 datensatz in Tabelle Daten hinzugefuegt <br>"
    mysql_close($dz); 

    ?>
    Das ist der Fehler:
    Error: 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 'mysql_real_escape_string(testvorname)' at line 3

    Zuletzt geändert von Maclaim; 03.02.2009, 01:08.

  • #2
    Re: [PHP5] mysql_real_escape_string

    Damit hast du nicht die Funktion aufgerufen, sondern den Text(!) mysql_real_escape_string(...) in deine Query eingesetzt.

    Schau dir an, wie es beim die() notiert ist - na, siehst du einen Unterschied?
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      ein blick in die funktionsbeschreibung hätte dir geholfen
      http://de3.php.net/mysql_real_escape_string

      was sucht eine PHP funktion IN einer SQL abfrage???
      Gruß
      Uzu

      private Homepage

      Kommentar


      • #4
        Der ist doch mal nett ... ich sehe aber manchmal auch den Wald vor Bäumen nicht *eingrinsenderphp_fussel

        Kommentar


        • #5
          Servus Leute ich habe mir eure Tipps mal zu herne genommen und so gut ich es konnte umgesetzt... aber jetzt komme ich schon wieder net weiter ^^ für nen Tipp währe ich echt dankbar :-)

          PHP-Code:
          <?php
          $host 
          "loc";
          $user "an";
          $pass "12";
          $database "pro";
          $dz mysql_connect($host$user$pass) or die(mysql_error());
          mysql_select_db($database$dz) or die(mysql_error());

          $sql="
            INSERT INTO
              daten (vname)
            VALUES
              ('"
          mysql_real_escape_string($_POST['vname'], $sz). "')
          "
          ;

          if (!
          mysql_query($sql,$dz))
          {
            die(
          'Error: ' mysql_error());
          }
          echo 
          'Anzahl hinzugefügter Datensätze: 'mysql_affected_rows($dz), "<br />";
          mysql_close($dz);
          ?>

          Das meine Fehlermeldung:
          Warning: mysql_real_escape_string() expects parameter 2 to be resource, null given in /var/www/vhosts/andreasbleul.de/httpdocs/phptest/insert.php on line 13
          Zuletzt geändert von Maclaim; 03.02.2009, 16:49.

          Kommentar


          • #6
            Was steht in $sz?

            Kommentar


            • #7
              UUpps sollte $dz sein xD
              jetzt gehts :-)

              Danke njaa hat wohl noch an der allgemeinen Morgenmüdigkeit gelegen ;-)

              Kommentar


              • #8
                Original geschrieben von Maclaim
                Das meine Fehlermeldung:
                Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in /var/www/vhosts/andreasbleul.de/httpdocs/phptest/insert.php on line 11
                Aber wohl nicht bei dem Code, den du uns da gezeigt hast.
                I don't believe in rebirth. Actually, I never did in my whole lives.

                Kommentar


                • #9
                  Ohh Sorry habs grad mim Falschen Code noch mal getestet, muss ich wohl davor irgendiwe falsch kopiert haben!

                  Habs grad in meinem alten Beitrag korrigiert!

                  Sorry!!

                  Kommentar

                  Lädt...
                  X