Jump to content
PirateClub.hu

Roodler

Felhasználó
  • Pontszám

    4
  • Csatlakozott

  • Utoljára itt járt

Posts posted by Roodler

  1. A legfőbb gond, hogy a változóknak ha SQL lekérdezésből jönnek, nem így adunk értéket.

    A php manual példája:

    <?php
    
    $conn = mysql_connect("localhost", "mysql_user", "mysql_password");
    
    if (!$conn) {
        echo "Unable to connect to DB: " . mysql_error();
        exit;
    }
      
    if (!mysql_select_db("mydbname")) {
        echo "Unable to select mydbname: " . mysql_error();
        exit;
    }
    
    $sql = "SELECT id as userid, fullname, userstatus 
            FROM   sometable
            WHERE  userstatus = 1";
    
    $result = mysql_query($sql);
    
    if (!$result) {
        echo "Could not successfully run query ($sql) from DB: " . mysql_error();
        exit;
    }
    
    if (mysql_num_rows($result) == 0) {
        echo "No rows found, nothing to print so am exiting";
        exit;
    }
    
    // While a row of data exists, put that row in $row as an associative array
    // Note: If you're expecting just one row, no need to use a loop
    // Note: If you put extract($row); inside the following loop, you'll
    //       then create $userid, $fullname, and $userstatus
    while ($row = mysql_fetch_assoc($result)) {
        echo $row["userid"];
        echo $row["fullname"];
        echo $row["userstatus"];
    }
    
    mysql_free_result($result);
    
    ?>

     

    Ha nem is fut le, akkor a query-t írasd ki és próbáld ki közvetlenül, meg nem biztos, hogy jó ötlet közvetlenül berakni egy $_GET változót a lekérdezésbe, keress rá az sql inject kifejezésre és megtudod, miért.

    $sql = mysql_query("SELECT * FROM elkuldott WHERE el_kod = '$kod'");

    helyett:

    $query = "SELECT * FROM elkuldott WHERE el_kod='".$kod."'";
    // itt lehet egy echo $query; debugoláshoz
    $sql = mysql_query($query);

×
×
  • Create New...