使用HTML / PHP / jQuery添加和编辑MySQL数据的最佳实践?

时间:2013-11-15 17:39:12

标签: php jquery html forms crud

我有一些 HTML 表单(由PHP生成),用于添加和编辑 MySQL 数据。我使用相同的表单进行添加和编辑。我正在开始一个新项目,并想知道我以前的技术是否是添加和编辑数据的正确方法。我想从头开始做到正确:)也许这些天jQuery和AJAX可以为此提供帮助?有人知道任何好的 CRUD(创建,阅读,更新和删除)插件/脚本吗?

基本上我用表单调用一个函数,传递一个带有当前数据的变量(如果有的话)。

我有两个例子。

示例1 - 年表格

echo "From: \n";
echo "<select name=\"startYear\">\n";
     formYears($startYearWeek[0]);
echo "</select>\n";

function formYears($default = null) {
    $year = 2008;
    while(date("Y")+1 >= $year) {
        if(($default != NULL) && ($year == $default)) {
            echo "<option selected=\"selected\" value=\"" . $year . "\">" . $year . "</option>\n";
        } else if(($default == NULL) && ($year == date("Y"))) {
            echo "<option selected=\"selected\" value=\"" . $year . "\">" . $year . "</option>\n";  
        } else {
            echo "<option value=\"" . $year . "\">" . $year . "</option>\n";
        }
        $year++;
    }
}

示例2 - 用户表单:

<form action="<?php $_SERVER['PHP_SELF']; ?>" method="post" name="userAdd">
    <?php fullUserForm($postArr); ?>
    <input name="userAddSubmit" type="submit" value="Lägg till användare" />
</form>


<?php function fullUserForm($defaultUser = null) { ?>
    <?php
    if($_SESSION['admin'] != "true") {
        echo "*Användarnamn:<br /><input name=\"username\" type=\"hidden\" value=\"".$defaultUser['username']."\">";
        echo "<span style=\"font-size:1.3em;\">".$defaultUser['username']."</span><br><br>\n";
    } else {
        echo "*Användarnamn:<br /><input name=\"username\" type=\"text\" value=\"".$defaultUser['username']."\"><br><br>";
    }
    ?>
    *Förnamn:<br /><input name="fName" type="text" value="<?php echo $defaultUser['fName']; ?>" /><br><br>
    *Efternamn:<br /><input name="lName" type="text" value="<?php echo $defaultUser['lName']; ?>"  /><br><br>
    Mobiltelefon:<br /><input name="mobilePhone" type="text" value="<?php echo $defaultUser['mobilePhone']; ?>" /><br><br>
    Alternativ telefon:<br /><input name="altPhone" type="text" value="<?php echo $defaultUser['altPhone']; ?>" /><br><br>
    *E-post:<br /><input name="email" type="text" value="<?php echo $defaultUser['email']; ?>" /><br><br>
    <?php
    if($_SESSION['admin'] != "true") {
        echo "*Roll:<br /><input name=\"role\" type=\"hidden\" value=\"".$defaultUser['role']."\">";
        echo "<span style=\"font-size:1.3em;\">".$defaultUser['role']."</span><br><br>\n";
    } else {
        echo "*Roll:<br /><input name=\"role\" type=\"text\" value=\"".$defaultUser['role']."\"><br><br>";
    }
    ?>
    Födelsedag (ÅÅÅÅ-MM-DD):<br /><input name="birthday" type="text" value="<?php echo $defaultUser['birthday']; ?>" /><br><br>
    *Önskat lösenord:<br /><input name="pswd1" type="password" value="<?php echo $defaultUser['pswd']; ?>" /><br><br>
    *Dubbelkoll av lösenordet:<br /><input name="pswd2" type="password" value="<?php echo $defaultUser['pswd']; ?>" /><br><br>
    <br />
    *obligatoriska fält<br />
<?php } ?>

1 个答案:

答案 0 :(得分:0)

很多时候没有单一的正确方法。通常有多种方法,其中一些被推荐而不是其他方法。您只需要看看哪些适合您和您的应用程序的大小。随着您的进步,您对各种方法的看法可能会发生变化。

如果您正在寻找能够为您处理大量此事的内容,那么您可能需要查看PHP框架。我知道Laravel提供了很多表单构建工具。

现在,如果您需要我的个人推荐,如果您不使用框架,那么我会尝试将大部分HTML留在echo语句中。这使HTML更容易维护。相反,我会做这样的事情:

<input type="text" name="age" value="<?php echoIfValueExists('age') ?>" />