3

きっと最初の反応は、「この人は Google を持っていませんか?」のようなものになるでしょう。はい、これはかなり基本的な概念のように思えることを認めます。私は頭を包み込もうとし、トピックに関するあらゆる種類の投稿や記事を調べましたが、すべて役に立ちませんでした. おそらく、あなたは私を正しい方向に向けることができますか?

外部 PHP スクリプト (contact.php) で実行する基本的な連絡先フォーム (contact.html) があります。HTMLフォームコードは次のとおりです。

<form id="form1" action="contact.php" method="post">
<div class="form1">
<label>Your Name:</label>
<span><input type="text" name="name" /></span>
</div>
<div class="form1">
<label>Your School:</label>
<span><input type="text" name="school" /></span>
</div>
<div class="form1">
<label>Phone Number:</label>
<span><input type="text" name="phone" /></span>
</div>
<div class="form1">
<label>E-Mail Address:</label>
<span><input type="text" name="email" /></span>
</div>
<div class="form3">
<span><textarea cols="1" rows="1" name="message"></textarea></span>
</div>
<div class="wrapper">
<input class="submit" type="image" src="images/contact_submit.png" name="submit" alt="Submit" />
</div>
</form>

PHP スクリプトは、すべてのフィールドが入力されたことを検証し、フォームを処理します。

<?php

if ($_SERVER['REQUEST_METHOD'] == 'POST') {

//Validate the name:
if (!empty($_POST['name'])) {
    $name = $_POST['name'];
} else {
    echo "You forgot to enter your name.<br>";
}

//Validate the school:
if (!empty($_POST['school'])) {
    $school = $_POST['school'];
} else {
    echo "You forgot to enter your school.<br>";
}

//Validate the e-mail:
if (!empty($_POST['email'])) {
    $email = $_POST['email'];
} else {
    echo "You forgot to enter your e-mail.<br>";
}

//Validate the message:
if (!empty($_POST['message'])) {
    $message = $_POST['message'];
} else {
    echo "You forgot to enter a message.";
}

if (!empty($_POST['name']) && !empty($_POST['school']) && !empty($_POST['email']) && !empty($_POST['message'])) {
    $phone = $_POST['phone'];
    $body = "$name\n$school\n$phone\n$email\n\n$message";
    mail("***", "PAL Website - Message from a Visitor", $body);
    header("Location: confirm.html");
}

}

?>

すべてがうまく機能し、フォームは意図したとおりに検証および処理されます。ただし、エラーメッセージが同じページに表示されるように設定するか、少なくともエラーメッセージが含まれているフォームを更新するように設定したいと本当に思っています。

これが他のデモ (Larry Ullman の本など) で行われているのを見たことがありますが、それを実現する方法はまだよくわかりません。アドバイスをお願いできますか?それについて行く最も簡単な方法は何ですか?

役立つ場合は、ページの URL を次に示します: http://www.712jefferson.org/pal/contact.html

ありがとうございました!

4

6 に答える 6

6

これにはjQueryを使用します。行うべき変更:

HTML の場合: 入力フィールドに id を追加して、jQuery でそれらを「取得」できるようにします ($.post以下の方法で使用法を確認できます)。

<form id="form1" action="contact.php" method="post">
   <div class="form1">
      <label>Your Name:</label>
      <span><input id="name" type="text" name="name" /></span>
   </div>
   <div class="form1">
      <label>Your School:</label>
      <span><input id="school" type="text" name="school" /></span>
   </div>
   <div class="form1">
      <label>Phone Number:</label>
      <span><input id="phone" type="text" name="phone" /></span>
   </div>
   <div class="form1">
      <label>E-Mail Address:</label>
      <span><input id="email" type="text" name="email" /></span>
   </div>
   <div class="form3">
      <span><textarea id="message" cols="1" rows="1" name="message"></textarea></span>
   </div>
   <div class="wrapper">
      <input class="submit" type="image" src="images/contact_submit.png" name="submit" alt="Submit" />
   </div>
</form>

PHP の場合: 検証にエラーがない場合は、これをエコーし​​ます: "success"

if (!empty($_POST['name']) && !empty($_POST['school']) && !empty($_POST['email']) && !empty($_POST['message'])) {
    echo "success";
    $phone = $_POST['phone'];
    $body = "$name\n$school\n$phone\n$email\n\n$message";
    mail("***", "PAL Website - Message from a Visitor", $body);
    header("Location: confirm.html");
}

jQueryライブラリをサイトに添付し、括弧内の HTML ファイルまたはサイトに添付された外部 *.js ファイルで以下のコードを使用します。あなたのHTMLファイルのセクションでこれを使用します:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js">
</script>

jQuery スクリプト:

$('#form1').submit(function() {
    event.preventDefault(); 
    $.post("contact.php", {name: $("#name").val(), school: $("#school").val(), phone: $("#phone").val(), email: $("#email").val(), message: $("#message").val()}, function(data){
        if(data !="success"){
            alert(data);
        }
    });
});

これにより、警告ウィンドウにエラー メッセージが表示され、間違いがなければサイトはリロードされません。

于 2013-08-20T20:20:42.450 に答える
2

これを行うには多くの方法があるため、これは意見に基づく質問であり、これを達成するためのいくつかの方法が得られます。

ページをリロードせずにデータを送信する ajax リクエストを実行し、応答にエラーがある場合は呼び出しが成功すると、エラーの原因となった入力の近くにエラーが表示されます。これには、javascript を使用し、隠し要素をエラーに設定して表示するか、エラーを含む要素を生成して DOM に追加する必要があります。

Amal Muraliが示すように実行し、htmlと検証スクリプトを同じスクリプトファイルに入れて、エラーをすぐに出力するか、エラーを引き起こした入力の近くでエラーをエコーすることをお勧めします

さらに別の方法は、contact.php で検証を行い、無効なデータで contact.html を出力し、再び入力の近くにエラーを配置することです。

于 2013-08-20T19:57:47.970 に答える
1
    <?php
    // define variables and set to empty values
    $firstnameErr = $lastnameErr = $usernameErr = $passwordErr = $genderErr = $courseErr = "";
    $firstname = $lastname = $username = $password = $gender = $comments = "";
    $course = array();
    //var_dump($_POST['gender']);
    //exit;
    if ($_SERVER["REQUEST_METHOD"] == "POST" && isset($_POST['submit'])) {

    $variables = array();
    $variables = initialize();
    $errors = array();
    $errors = validate_errors($variables);

    if (count($errors) == 0) {
        //database operation
        //exit;
    }
    }  
    function clean($data) {
    $data = strip_tags(htmlspecialchars(stripslashes(trim($data)))); 
     //trim :- Strip whitespace (or other characters) from the beginning and end of a string
     //The stripslashes() function removes backslashes.Prevents XSS
     //htmlspecialchars :- Converts the predefined characters "<" (less than) and ">" (greater than) to HTML entities:< (less than) becomes &lt; and > (greater than) becomes &gt;Helps in preventing XSS
     //The strip_tags() function strips a string from HTML, XML, and PHP tags.
    return $data;
    }

    function initialize(){
    $var = array();
    $var['firstname'] = clean($_POST['firstname']);
    $var['lastname'] = clean($_POST['lastname']);
    $var['username'] = clean($_POST['username']);
    $var['password'] = clean($_POST['password']);
    if(!empty($_POST['gender'])) {                //if-else condition is used because here we don't type in any data,but just select data
    $var['gender'] = $_POST['gender'];
    }  else {
        $var['gender'] = '';
    }
    //var_dump($_POST[gender]);
    if(!empty($_POST['course'])) {               //if-else condition is used because here we don't type in any data,but just select data
    $var['course'] = $_POST['course'];
    } else {
        $var['course'] = '';
    }
    $var['comments'] = clean($_POST['comments']);
    return $var;
     }

    function validate_errors($var) {    //is an array being passed into this function??have a look at arg of validateFirstName.
    $errors = array();

    $errors['firstname'] = validateFirstName($var['firstname']);//should return error string or ''
    $errors['lastname'] = validateLastname($var['lastname']);
    $errors['username'] = validateUserName($var['username']);
    $errors['password'] = validatePassword($var['password']);
    $errors['gender'] = validateGender($var['gender']);
    $errors['course'] = validateCourse($var['course']);
    $errors['comments'] = validateComments($var['comments']);
    return $errors;
   }

      function validateFirstName($fname){

      if(empty($fname)){
        global $firstnameErr;
        $firstnameErr = "First name is required";
        return $firstnameErr;
    } else if (!preg_match("/^[a-zA-Z ]*$/", $fname)){ // check if name only contains letters and whitespace.Performs a regular expression match
        global $firstnameErr;
        $firstnameErr = "Only letters are allowed";
        return $firstnameErr;
    } else {
        global $firstname;
       $firstname = $fname;
       return ''; 
    }   
}    

function validateLastName($lname){

    if(empty($lname)){
        return '';
    } else if (!preg_match("/^[a-zA-Z ]*$/", $lname)) { // check if name only contains letters and whitespace,performs a regular expression match
        global $lastnameErr;
        $lastnameErr = "Only letters are allowed";
         return $lastnameErr;
    } else {
        global $lastname;
        $lastname = $lname;
       return ''; 
    }
}

function validateUserName($uname) {

    if(empty($uname)) {
        global $usernameErr;
        $usernameErr = "Username is required";
        return $usernameErr;
    } else if (!preg_match("/^[a-zA-Z0-9 ]*$/", $uname)){ // checks if username contains only letters and digits
        global $usernameErr;
        $usernameErr = "Only letters and digits are allowed";
        return $usernameErr;
    } else {
        global $username;
        $username = $uname;
       return ''; 
    }  
}

function validatePassword($pword){

    if(empty($pword)) {
        global $passwordErr;
        $passwordErr = "Password is required";
        return $passwordErr;
    } else if (preg_match("/^.*(?=.{8,})(?=.*[0-9])(?=.*[a-z])(?=.*[A-Z]).*$/", $pword) === 0) {
        global $passwordErr;
        $passwordErr = "Password must be at least 8 characters and must contain at least one lower case letter, one upper case letter and one digit";
        return $passwordErr;
    } else {
        global $password;
        $password = $pword;
       return '';  
    }
}    

function validateGender($gen){

    if(empty($gen)) {
        global $genderErr;
        $genderErr = "Gender is required";  
      return $genderErr;
    } else {
        global $gender;
        $gender = $gen;
        return '';
    }
}

function validateCourse($cour){

    if(empty($cour)) {
        global $courseErr;
        $courseErr = "Select atleast one";
        return $courseErr;
    } else {
        global $course;
        $course = $cour;
        return '';
    }
}

function validateComments($comm){

    if(empty($comm)) {
        return '';
    } else {
        global $comments;
        $comments = $comm;
        return '';
    }
}


    //renderform();



    ?>


    <html>
    <head>
        <title>Sample Form</title>
        <style>
            .error {color: #FF0000;}
        </style>
    </head>
    <body>
        <p><span class="error">* required field.</span></p>
        <form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]); ?>"> 
            <label for="firstname">Firstname:</label>
            <input type="text" name="firstname" id="firstname" value="<?php echo $firstname; ?>" /><span class="error">* <?php echo $firstnameErr; ?></span><br/><br/>
            <label for="lastname">Lastname:</label>
            <input type="text" name="lastname" id="lastname" value="<?php echo $lastname; ?>" /><span class="error"> <?php echo $lastnameErr; ?></span><br/><br/>
            <label for="username">Username:</label>
            <input type="text" name="username" id="username" value="<?php echo $username; ?>" /><span class="error">* <?php echo $usernameErr; ?></span><br/><br/>
            <label for="password">Password:</label>
            <input type="password" name="password" id="password" /><span class="error">* <?php echo $passwordErr; ?></span><br/><br/>
            Gender:
            <label for="male">Male</label>
            <input type="radio" name="gender" id="male" <?php if (isset($gender) && $gender == "male") echo "checked"; ?> value="male" />  
            <label for="female">Female</label>
            <input type="radio" name="gender" id="female" <?php if (isset($gender) && $gender == "female") echo "checked"; ?> value="female" /><span class="error">* <?php echo $genderErr; ?></span><br/><br/>
            <label for="course">Course:</label>
            PHP<input type="checkbox" name="course[]" id="course" <?php if((!empty($_POST["course"])&& in_array("PHP",$_POST["course"]))){echo "checked";}?> value="PHP" />
            HTML<input type="checkbox" name="course[]" id="course" <?php if((!empty($_POST["course"])&& in_array("HTML",$_POST["course"]))){echo "checked";}?> value="HTML" />
            CSS<input type="checkbox" name="course[]" id="course" <?php if((!empty($_POST["course"])&& in_array("CSS",$_POST["course"]))){echo "checked";}?> value="CSS" />
            Javascript<input type="checkbox" name="course[]" id="course" <?php if((!empty($_POST["course"])&& in_array("Javascript",$_POST["course"]))){echo "checked";}?> value="Javascript" /><span class="error">* <?php echo $courseErr; ?></span><br/><br/>
            <label for="comments">Comments:</label><br/>
            <textarea name="comments" rows="4" cols="20" id="comments"/><?php echo $comments; ?></textarea><br/><br/>
        <input type = "submit" value="Submit" name="submit">
    </form>
     <?php
    echo "<h2>Your Input:</h2>";
    echo "Firstname:" . $firstname;
    echo "<br>";
    echo "Lastname:" . $lastname;
    echo '<br>';
    echo "Username:" . $username;
    echo '<br>';
    echo "Password:" . $password;
    echo '<br>';
    echo "Gender:" . $gender;
    echo '<br>';
    global $string;
    $string = implode(",",$course);
    echo "Course(/s):" . $string;
    echo '<br>';
    echo "Comments:" . $comments;
    echo '<br>';
    ?>
    </body>
    </html>
于 2014-09-11T17:50:47.467 に答える
1

index.phpのコード(このファイルが最初に実行されます)

<?php
define('PROJECT',$_SERVER['DOCUMENT_ROOT'].'PhpSample');
include (PROJECT.'/utilities.php');
include ('constant.php');

if ($_SERVER["REQUEST_METHOD"] == "POST" && isset($_POST['submit'])) {

$errors = validate_errors($variables);
$counter = 0;
foreach ($errors as $value) {
    if ($value === '') {
        $counter++;
    }
}

//if there are no errors
if ($counter == 7) {
    //database operation
    $con = mysqli_connect($host, $user, $pword);
    if (!$con) {
        echo 'Error connecting to database. Please try again later';
        exit;
    }
    $val = cleanandinsert($variables,$con,$dbname);
    mysqli_close($con);
    if(!$val){
        echo 'Could not register. Please try again later';
        exit;
    }
    header("Location:http://localhost/PhpSample/target.php?vals=" .     urlencode(serialize($variables))); 
    exit;
  }
}


include('myform.phtml');
?>

target.php のコード

<?php
include 'process.php';
$Values= unserialize(urldecode($_GET['vals'])); 
echo "<h2>Your Input:</h2>";
echo "Firstname:".$Values['firstname'];
echo "<br>";
echo "Lastname:".$Values['lastname'] ;
echo '<br>';
echo "Username:".$Values['username'] ;
echo '<br>';
echo "Password:".$Values['password'] ; 
echo '<br>';
echo "Gender:".$Values['gender'] ;
echo '<br>';
if (!empty($Values['course'])) {
    $string = implode(',', $Values['course']);
} else {
    $string = "";
}
echo "Course(/s):" . $string;
echo '<br>';
echo "Comments:".$Values['comments'] ; 
echo '<br>';
?>

constant.php のコード

<?php
// define variables and set to empty values
$firstnameErr = $lastnameErr = $usernameErr = $passwordErr = $genderErr = $courseErr     = "";
$firstname = $lastname = $username = $password = $gender = $comments = "";
$course = array();
$variables = initialize();
$host = 'localhost';
$user = 'root';
$pword = '';
$dbname = 'mydb';
$tablename = 'userdata';
?>

myform.phtml のコード

<html>
<head>
    <title>Sample Form</title>
    <style>
        .error {color: #FF0000;}
    </style>
</head>
<body>
    <p><span class="error">* required field.</span></p>
    <form method="post" action="./index.php"> 
        <label for="firstname">Firstname:</label>                                                           
        <input type="text" name="firstname" id="firstname" value="<?php if (isset($variables['firstname']) ? print_r($variables['firstname']) : '') ; ?>" /><span class="error">* <?php if (isset($errors['firstname']) ? print_r($errors['firstname']) : '') ; ?></span><br/><br/>
        <label for="lastname">Lastname:</label>
        <input type="text" name="lastname" id="lastname" value="<?php if (isset($variables['lastname']) ? print_r($variables['lastname']) : '') ; ?>" /><span class="error"> <?php if (isset($errors['lastname']) ? print_r($errors['lastname']) : '') ; ?></span><br/><br/>
        <label for="username">Username:</label>
        <input type="text" name="username" id="username" value="<?php if (isset($variables['username']) ? print_r($variables['username']) : '') ; ?>" /><span class="error">* <?php if (isset($errors['username']) ? print_r($errors['username']) : '') ; ?></span><br/><br/>
        <label for="password">Password:</label>
        <input type="password" name="password" id="password" /><span class="error">* <?php if (isset($errors['password']) ? print_r($errors['password']) : '') ; ?></span><br/><br/>
        Gender:
        <label for="male">Male</label>
        <input type="radio" name="gender" id="male" <?php if (isset($variables['gender']) && ($variables['gender'] == "male")) echo "checked"; ?> value="male" />  
        <label for="female">Female</label>
        <input type="radio" name="gender" id="female" <?php if (isset($variables['gender']) && ($variables['gender'] == "female")) echo "checked"; ?> value="female" /><span class="error">* <?php if (isset($errors['gender']) ? print_r($errors['gender']) : '') ; ?></span><br/><br/>
        <label for="course">Course:</label>
        PHP<input type="checkbox" name="course[]" id="course" <?php echo getChecked("PHP") ?>  value="PHP" />
        HTML<input type="checkbox" name="course[]" id="course" <?php echo getChecked("HTML") ?> value="HTML" />
        CSS<input type="checkbox" name="course[]" id="course" <?php echo getChecked("CSS") ?> value="CSS" />
        Javascript<input type="checkbox" name="course[]" id="course" <?php echo getChecked("Javascript") ?> value="Javascript" /><span class="error">* <?php if (isset($errors['course']) ? print_r($errors['course']) : '') ; ?></span><br/><br/>
        <label for="comments">Comments:</label><br/>
        <textarea name="comments" rows="4" cols="20" id="comments"/><?php if (isset($variables['comments']) ? print_r($variables['comments']) : '') ; ?></textarea><br/><br/>
    <input type = "submit" value="Submit" name="submit">
</form>

utility.php のコード

<?php

/** * 変数をクリーンアップし、クロス サイト クリプティングのない変数を返します。* @return 変数に空白がなく、スラッシュやタグが取り除かれています。*/

function clean($data, $ishtmltype = FALSE) {
if ($ishtmltype) {  //for database operation
    $data = htmlspecialchars(stripslashes(trim($data)));
    return $data;
}
$data = strip_tags(htmlspecialchars(stripslashes(trim($data))));

return $data;
}

/** * "clean()" の助けを借りてクレンジングされた変数の配列を返します * @return $var array */

  function initialize() {
   $var = array();
   $var['firstname'] = isset($_POST['firstname']) ? clean($_POST['firstname']) : '';
   $var['lastname'] = isset($_POST['lastname']) ? clean($_POST['lastname']) : '';
   $var['username'] = isset($_POST['username']) ? clean($_POST['username']) : '';
   $var['password'] = isset($_POST['password']) ? $_POST['password'] : '';
   if (!empty($_POST['gender'])) {                
    $var['gender'] = $_POST['gender'];
   } else {
    $var['gender'] = '';
  }
  //var_dump($_POST[gender]);
   if (!empty($_POST['course'])) {               
    $var['course'] = $_POST['course'];
   } else {
    $var['course'] = '';
   }
   $var['comments'] = isset($_POST['comments']) ? clean($_POST['comments']) : '';
    return $var;
   }

/** * エラーメッセージを含むエラー変数の配列を返します * @param type $var array * @return $errors array */

function validate_errors($var) {    
$errors = array();

$errors['firstname'] = validateFirstName($var['firstname']); //should return error   string or ''
$errors['lastname'] = validateLastname($var['lastname']);
$errors['username'] = validateUserName($var['username']);
$errors['password'] = validatePassword($var['password']);
$errors['gender'] = validateGender($var['gender']);
$errors['course'] = validateCourse($var['course']);
$errors['comments'] = validateComments($var['comments']);
return $errors;
}

/** * ファースト ネームにエラー メッセージがあれば、それを返します * @param type $fname * @return 文字列または見つからない場合は null */

function validateFirstName($fname) {

if (empty($fname)) {
    $firstnameErr = "First name is required";
    return $firstnameErr;
} else if (!preg_match("/^[a-zA-Z']*$/", $fname)) { // check if name only contains   letters and whitespace.Performs a regular expression match
    $firstnameErr = "Only letters are allowed";
    return $firstnameErr;
}
  else if (strlen($fname) < 3){
    $firstnameErr = "Atleast 3 characters";
    return $firstnameErr;
  }
   else if (strlen($fname) > 60){
    $firstnameErr = "Not more than 60 characters";
    return $firstnameErr;
  }
return '';
}

/** * ラストネームにエラーメッセージがあれば、それを返します * @param type $lname * @return 文字列または見つからない場合は null */

function validateLastName($lname) {

if (empty($lname)) {
    return '';
} else if (!preg_match("/^[a-zA-Z ]*$/", $lname)) { // check if name only contains letters and whitespace,performs a regular expression match
    $lastnameErr = "Only letters are allowed";
    return $lastnameErr;
}
else if (strlen($lname) > 60){
    $firstnameErr = "Not more than 60 characters";
    return $firstnameErr;
  }
return '';
}

/** * ユーザー名にエラー メッセージがあれば、それを返します * @param type $uname * @return 文字列または見つからない場合は null */

function validateUserName($uname) {

if (empty($uname)) {
    $usernameErr = "Username is required";
    return $usernameErr;
} else if (!preg_match("/^[a-zA-Z0-9 ]*$/", $uname)) { // checks if username contains only letters and digits
    $usernameErr = "Only letters and digits are allowed";
    return $usernameErr;
}
else if (strlen($uname) < 3){
    $firstnameErr = "Atleast 3 characters";
    return $firstnameErr;
  }
   else if (strlen($uname) > 60){
    $firstnameErr = "Not more than 60 characters";
    return $firstnameErr;
  }
  return '';
}     

/** * パスワードにエラー メッセージがあれば、それを返します * @param type $pword * @return 文字列または見つからない場合は null */

function validatePassword($pword) {

if (empty($pword)) {
    $passwordErr = "Password is required";
    return $passwordErr;
} else if (preg_match("/^.*(?=.{8,})(?=.*[0-9])(?=.*[a-z])(?=.*[A-Z]).*$/", $pword)     === 0) {
    $passwordErr = "Password must be at least 8 characters and must contain at least one lower case letter, one upper case letter and one digit";
    return $passwordErr;
}
return '';
}

/** * 性別にエラーメッセージがあればそれを返します * @param type $gen * @return string または見つからない場合は null */

function validateGender($gen) {

if (empty($gen)) {
    $genderErr = "Gender is required";
    return $genderErr;
} else if (($gen != "male") && ($gen != "female")) {
    $genderErr = "Not a valid selection";
    return $genderErr;
}
return '';

}

/** * コースにエラー メッセージがあれば、それを返します * @param type $cour * @return string または見つからない場合は null */

function validateCourse($cour) {

if (empty($cour)) {
    $courseErr = "Select atleast one";
    return $courseErr;
} else if (array_values($cour) != ("PHP" && "HTML" && "CSS" && "Javascript")) {
    $courseErr = "Not a valid selection";
    return $courseErr;
}
return '';
}

/** * エラーメッセージを返さず、任意の内容を受け入れます * @param type $comm * @return null */

function validateComments($comm) {

if (empty($comm)) {
    return '';
}
return '';
}

/** * 文字列内の特殊文字をすべて削除し、検証済みのユーザー データをデータベースに挿入します * @param type $variables array * @param type $con * @param type $dbname * @return boolean */

function cleanandinsert($variables, $con, $dbname) {

$firstname = mysqli_real_escape_string($con, $variables['firstname']); //The mysqli_real_escape_string() function escapes special characters in a string for use in an SQL statement.
$lastname = mysqli_real_escape_string($con, $variables['lastname']);
$username = mysqli_real_escape_string($con, $variables['username']);
$password = sha1($variables['password']);    
$gender = mysqli_real_escape_string($con, $variables['gender']);
$string = implode(',', ($variables['course']));
$course = mysqli_real_escape_string($con, $string);
$comments = mysqli_real_escape_string($con, $variables['comments']);
$sql = "INSERT INTO $dbname.userdata (firstname,lastname,username,password,gender,course,comments)
                VALUES ('$firstname','$lastname','$username','$password','$gender','$course','$comments')";

if (!mysqli_query($con, $sql)) {

        return FALSE;        
}
return TRUE;
}

/** * 間違ったデータの送信時にチェックされたチェックボックスをチェックします。つまり、チェックされたチェックボックスを記憶しています。* @param type $course * @return checked チェックボックスまたはチェックボックスがチェックされていない場合は null */

function getChecked($course){
if(!empty($_POST['course']) && in_array($course, $_POST["course"])){
    return 'checked';
}
return '';
}

?>
于 2014-09-29T09:46:52.803 に答える
0

ラダー if..else 構造をコードに使用しif()て条件を設定し、条件が false の場合はエラー メッセージに移動し、メイン フォームのリンクを配置して、ユーザーが戻ることができるようにします。 ..

于 2015-08-06T19:25:41.443 に答える