-2

Echo 'Hello Programmers';

レコードの削除機能に取り組んでいます。ただし、現在、未定義のインデックスの問題が再発しているため、少し迷っています。

これがフロントエンドのコードです。

<form action="<?php echo $_SERVER['PHP_SELF'] ?>" method="post">
Select member to <b> DELETE! </b>: <select name="mid">
<?php
while($row = mysqli_fetch_assoc($result))
echo "<option value='{$row['mid']}'>{$row['mid']} </option>";
?>
</select>
<input type="submit" value=">!DELETE!<" />
</form>

<?php
}

else
{
$mid = $_POST['mid'];
$name = $_POST['name'];
$address = $_POST['address'];
$postcode = $_POST['postcode'];
$photo = $_POST['photo'];
$db1 = new dbmember();
$db1->openDB();
$numofrows = $db1->delete_member($mid, $name, $address, $postcode, $photo);
echo "Success. Number of rows affected:
<strong>{$numofrows}<strong>";


$db1->closeDB();
}

ドロップダウン メニューから ID を選択しています。次に、削除ボタンが押されたときにこの ID をクラス メソッドに渡して、削除を実行します。

function delete_member($mid, $name, $address, $postcode, $photo) {
        $esc_name = mysqli_real_escape_string($this->conn, $name);
        $esc_address = mysqli_real_escape_string($this->conn, $address);
        $esc_postcode = mysqli_real_escape_string($this->conn,$photo);
        $esc_photo = mysql_reali_escape_string($this->conn, $photo);

        $sql = "DELETE FROM member WHERE mid = $mid";
        $result = mysqli_query($this->conn, $sql);

       if ($result) {
             $numofrows = mysqli_affected_rows($this->conn);
            return $numofrows;
            }
            else
                $this->error_msg = "could not connect for some wierd reason";
                        return false ;
     }

Notice: Undefined index: name in C:\xampp\htdocs\dbm\deletemember.php on line 120

たぶん、「Else」演算子を置き換えるか、一緒に取り除く必要がありますか? ありがとうございました。

4

1 に答える 1

0

変化する:

$db1->delete_member($mid, $name, $address, $postcode, $photo); 

に:

$db1->delete_member($mid);

そして変更:

function delete_member($mid, $name, $address, $postcode, $photo) {

に:

function delete_member($mid) {

そして、delete_member 関数の1 行目から 4 行目を削除します

于 2013-07-14T10:54:19.567 に答える