在php中删除数据库中的确认记录

时间:2012-12-02 19:39:50

标签: php database record

我正在制作一个表单,您可以输入记录名称和代码,以便将其从数据库“世界”中删除。

但我一直收到这些错误:(:

  

警告:缺少doblok66()的参数1,在第224行的C:中调用,在第89行的C:中定义   警告:缺少doblok66()的参数2,在第224行的C:中调用,在第89行的C:中定义   注意:未定义的变量:C代码中的土地代码:第92行   注意:未定义的变量:C中的taal:第92行

这是php代码:

<?php
if(isset($_POST['blok66'])) {
    $taaltmp=$_POST ['taal'];
    $landtmp=$_POST ['landcode'];
    doblok66();
}
?>'

function doblok66($taal, $landcode) {
    $link = mysql_connect("localhost","root") ;
    $dbresultaat = mysql_select_db("world") ;
    $sql = "DELETE FROM countrylanguage  WHERE (CountryCode = '".$landcode."' AND Language = '".$taal."' ) AND IsOfficial = 'F' ";
    mysql_query($sql) ;

}

和html代码:

<h1> opdracht 6.6 </h1>

<table>
  <form action='blok6.php' method='post'>
    <tr>
      <td> taal: </td> <td> <input type="text" name="taal"></td> 
    </tr>
    <tr>
      <td> landcode: </td> <td> <input type="text" name="landcode"></td> 
    </tr>
    <tr>
      <td>
        <input type="submit" name='blok66' value="Submit">
      </td>
    </tr>
  </form>
</table>

我只是想知道是否有人可以看看,让我知道我哪里出错了。

1 个答案:

答案 0 :(得分:4)

你的函数doblok66()需要两个参数但是当你调用它时你不会给出任何参数。你需要像这样调用函数:

doblok66($taaltmp, $landtmp);

问题在于您定义变量然后调用函数。当PHP开始执行该函数时,它不会“知道”您之前定义的变量,您需要将这些变量作为参数。

此处有更多信息:PHP Functions argumentsPHP Variable scope