Php kullanarak mysql liste kayıtları

2 Cevap php

This is the last thing I'm gonna do, after I can make this work, I can produce to designing which might be a lot easier. Thanks for all your help. I want to list a record from mysql using php by typing a query in the text box. Then the program will list all the records that has that element, for example address. Here is my code:

      <?php
         $con = mysql_connect("localhost","root","");
         if (!$con)
         {
            die('Could not connect: ' . mysql_error());
         }

         mysql_select_db("koro", $con);

         \\what will I put in the WHERE ADDRESS="?
         $result = mysql_query("SELECT * FROM students WHERE ADDRESS=");

         echo "<table border='1'>
               <tr><th>Firstname</th>
               <th>Lastname</th></tr>";

         while($row = mysql_fetch_array($result))
         {
            echo "<tr>";
            echo "<td>" . $row['IDNUMBER'] . "</td>";
            echo "<td>" . $row['LNAME'] . "</td>";
            echo "<td>" . $row['FNAME'] . "</td>";
            echo "<td>" . $row['MNAME'] . "</td>";
            echo "<td>" . $row['GRADEYR'] . "</td>";
            echo "<td>" . $row['ADDRESS'] . "</td>";
            echo "</tr>";
         }
         echo "</table>";

         mysql_close($con);
      ?>

Listform.html:

         <html>
         <head>
         <form action="list.php" method="post">
         address:<input type="text" name="grup" value="" /><br/>
         <input type="submit" name="List" value="" /><br/>
         </form>
         </head>
         </html>

\ Ne NEREDE ADRES koyacağız = "? Teşekkürler

2 Cevap

Sen $_POST[] dizideki değer bulacaksınız.

$result = mysql_query("SELECT * FROM students WHERE ADDRESS = '{$_POST["grup"]}'");

Bu yaklaşım olsa tehlikeli olabilir - mevcut öğreticiler bol olan - sen de karşı SQL injection attacks sizin $ _POST [] verileri sterilize etmek isteyeceksiniz.

Yayınlanmıştır $ _POST ['grup'] alanındaki değer içerecektir.

Sonra yok bir şey gibi:

$result = mysql_query(sprintf("SELECT * FROM students WHERE ADDRESS='%s'", mysql_real_escape_string($_POST['grup'], $con)));

Eğer sprintf ile POST değeri kaçış yok ve mysql_real_escape_string Eğer SQL enjeksiyon saldırıları ile hedef olabilir.

http://en.wikipedia.org/wiki/SQL_injection