2014-12-21 146 views
1

我想从数据库中删除一行,我使用下面的代码。当我提交页面重新加载,如果我检查数据库行仍然存在。没有错误,没有任何东西。我能做些什么来解决这个问题?php query_mysql不返回任何东西

HTML

<div class="delete_row"> 
    Sterge 
    <form method="post" action=""> 
    *<input type="text" name="id_col" Placeholder="Id-ul coloanei"><br> 
    <input type="submit" name="submit1" value="Sterge"> 
    </form> 
</div> 

PHP

$id_stergere=isset($_POST["id_col"]); 
$submitcheck2=isset($_POST["submit1"]); 

if($submitcheck2 && $id_stergere !==0){ 
    $sql = "DELETE FROM evenimente WHERE ID_even=$id_stergere"; 
    $result = query_mysql($sql); 
} 
+1

您在标题中询问'mysql_query',但在您的代码中只有'query_mysql'和'$ id_stergere'是'true'或'false',但不是id。 –

+0

它是query_mysql我很抱歉,它是错误还是真的?它没有从输入中获得价值吗? –

+0

你知道有一个文件? [php:isset](http://php.net/manual/en/function.isset.php) –

回答

0
if (isset($_POST["id_col"])) 
    $id_stergere=$_POST["id_col"]; 

if (isset($_POST["submit1"])) 
    $submitcheck2=$_POST["submit1"]; 

//additional check: 
// if (!is_numeric($id_stergere)) die('there was a problem'); 
// if (!$submitcheck2) die('there was a problem'); 

    $sql = "DELETE FROM evenimente WHERE ID_even=".$id_stergere; 
    $result = mysql_query($sql); 
+0

谢谢!正是我需要的,现在它是有道理的。 –

0

query_mysql?

使用此为您的PHP:

error_reporting(E_ALL^E_NOTICE); 

if(isset($_POST['submit1'])){ 

    $id_stergere=$_POST["id_col"]; 
    $submitcheck2=$_POST["submit1"]; 

    if($submitcheck2 && $id_stergere){ 
     $sql = "DELETE FROM evenimente WHERE ID_even=$id_stergere"; 
     $result = mysql_query($sql); 
    } 
} 

您应该使用库MySQLi而不是虽然。

使用这种替代$sql = and $result = :

$link = mysqli_connect("localhost","db","password","user") or die("Error " . mysqli_error($link)); 
$query= "DELETE FROM evenimente WHERE ID_even=$id_stergere"; 
$result= mysqli_query($link,$query); 

要获得numRows行使用此:

$numrows = $result->num_rows; 

对于fetch_array:

while($row = $result->fetch_array()){ 

     $var= $row['field']; 
} 

UPDATE:添加电子邮件rror_reporting(E_ALL^E_NOTICE);顶端的PHP脚本。

+0

'isset'返回一个'bool',因为'$ id_stergere'永远不会是_id_,它可以是'true'或'false'。 –

+0

查看更新 - 正在制作,因为你发布:) –

+0

我不明白为什么我需要fetch_array,如果我只是想删除它?你能解释我吗? –