2

我有一个有点冗长的表格,使用引导程序创建一个新的“补丁”。这将是基本create形式。使此表单成为edit表单的最简单方法是什么?

我在使用与此类似的文本框

<?php
    $result = mysql_query("SELECT `title` FROM `products` WHERE `id` = $id;"); // replace $id with the ID variable
    $row = mysql_fetch_assoc($result);
    $title = $row['title'];
    echo "<input type='text' name='title' value='$title' />\n";
?>

我正在努力解决的部分是自动检查哪些复选框。有没有一种我想念的从根本上简单的方法来做到这一点?

4

1 回答 1

2

当涉及到复选框时,我总是先设置一个默认值(什么都没有),然后如果它存在就添加它。

$checked_code = ' checked="checked"';

$checkbox_name = '';
if($row['checkbox_name'] == 1){
    $checkbox_name = $checked_code;
}

echo '<option name="" ' . $checkbox_name . '>Option</option>';

编辑:使表单对添加和编辑有用

您的 URL 如下所示:

http://www.example.com/addedit.php

如果您像这样访问它,它将转到添加页面,但如果您在最后添加了一个 GET,它将转到该 id 的编辑页面:

http://www.example.com/addedit.php?id=345

然后,您可以将其纳入您的代码:

$checked_code = ' checked="checked"';
$checkbox_name = '';

if(isset($_GET['id'])){
    // Editing
    $form_action = "edit.php";
    $id = $_GET['id'];
    $result = mysql_query("SELECT `title` FROM `products` WHERE `id` = {".$id."}"); // replace $id with the ID variable
    $row = mysql_fetch_assoc($result);
    $title = $row['title'];

    if($row['checkbox_name'] == 1){
        $checkbox_name = $checked_code;
    }
}else{
    $form_action = "add.php";
}

echo '<option name="" ' . $checkbox_name . '>Option</option>';
于 2013-06-24T14:34:55.277 回答