Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/289.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使PhP代码在Javascript之前先执行 初始页面加载时的_Php_Javascript_Jquery_Html - Fatal编程技术网

使PhP代码在Javascript之前先执行 初始页面加载时的

使PhP代码在Javascript之前先执行 初始页面加载时的,php,javascript,jquery,html,Php,Javascript,Jquery,Html,: 流程如下所示: 服务器端代码->向客户端发送数据->浏览器开始渲染和执行JS 提交表格: 客户端执行代码(javascript)->向服务器发送数据->服务器获取数据和进程 要改变这种工作方式,您需要执行一个或表单提交,并在“成功”时执行上述JavaScript。您可以发布到同一页面或将其更改为RESTful服务 以下是jQuery中AJAX和POST函数的示例: AJAX 邮政(JS) 以下是专门为您提供的结果,以上面的两个片段为例 JavaScript/jQuery $(函数(){ 如

: 流程如下所示:

服务器端代码->向客户端发送数据->浏览器开始渲染和执行JS

提交表格:

客户端执行代码(javascript)->向服务器发送数据->服务器获取数据和进程

要改变这种工作方式,您需要执行一个或表单提交,并在“成功”时执行上述JavaScript。您可以发布到同一页面或将其更改为RESTful服务

以下是jQuery中AJAX和POST函数的示例:

AJAX 邮政(JS)
以下是专门为您提供的结果,以上面的两个片段为例

JavaScript/jQuery
$(函数(){
如果($('form')。长度>0){
$('form')。提交(函数(e){
e、 预防默认值();
$.ajax({
类型:“POST”,
url:“你的url”,
数据:你的表单数据,
成功:功能(结果){
//结果将包含调用表单的xml或JSON结果
var检查=”;
警惕(检查);
如果(选中!=“”){
警报(“此用户已存在”);
返回false;
}否则{
返回true;
}
},
数据类型:“XML-OR-JSON”
});
});
}
})

尝试在
$(窗口)内运行jQuery代码。load()
?问题是php代码在
POST
@CollinHenderson:
$(函数(){/*…*/})后运行
是jQuery在文档准备就绪时的执行方式。@Travesty3 AFAIK
$(function(){/*…*/})
相当于
$(document).ready()
,否?也就是说,它在DOM准备就绪时运行,但不一定在页面完全加载时运行(哪个
$(window).load()
)有什么想法吗?还有其他设置优先级的方法吗?你是说我应该使用其中任何一种。我应该在哪里插入这段代码?在你的$('form').submit(函数(e){e.preventDefault();--insert code HERE!!!}上面的代码不起作用。如果其余字段不同,它只允许我添加重复的记录(实际上并没有添加到数据库中)但是,它对我来说什么都没有显示。上面的代码仍然只是伪代码,你必须让它发布正确的数据。然后你的网页或RESTful服务的URL我仍然不理解这段代码。但是,我从文件中省略了所有javascript,而使用php代码进行验证。我以前从未使用过AJAX,这就是为什么我不理解这段代码努力理解这一点。
<?PHP
//$errorMessage = "";
//$check = "";
if ($_SERVER['REQUEST_METHOD'] == 'POST'){
        //===================================================
        //  GET THE QUESTION AND ANSWERS FROM THE FORM
        //===================================================
    $sID = $_POST['studentID'];
    $sID  = htmlspecialchars($sID);
        $firstName = $_POST['firstName'];
        $firstName  = htmlspecialchars($firstName);
        $lastName = $_POST['lastName'];
        $lastName  = htmlspecialchars($lastName);
        $grade = $_POST['grade'];
        $grade  = htmlspecialchars($grade);
        //var_dump($grade);

        //============================================
        //  OPEN A CONNECTION TO THE DATABASE
        //============================================
    $user_name = "root";
    $password = "";
    $database = "surveyTest";
    $server = "127.0.0.1";
    $db_handle = mysql_connect($server, $user_name, $password);
    $db_found = mysql_select_db($database, $db_handle);
    if ($db_found) {
        //============================================
        //  GET THE LAST QUESTION NUMBER
        //============================================
            $SQL = "Select * FROM students WHERE SID='$sID'";
            $result = mysql_query($SQL);
            $db_field = mysql_fetch_assoc($result);
            $studentID = $db_field['SID'];
            var_dump($studentID);
            //=========================================================
            //  Add a student to the students TABLE
            //=========================================================
            $SQL = "INSERT INTO students (SID, fName, lName, Grade) VALUES ('$sID', '$firstName', '$lastName', '$grade')";
            $result = mysql_query($SQL);
            //=============================================================
           //   SET Multiple rows IN THE answers TABLE for each question for a given student.
           //=============================================================
            /*$SQL = "Select * FROM tblquestions";
            $result = mysql_query($SQL);
            $numRows = mysql_num_rows($result); //return number of rows in the table
            for ($i = 1; $i <= $numRows; $i++){
                $qNum = 'q1';
                $SQL = "INSERT INTO answers (QID, A, B, C, D, E, SID) VALUES ('$qNum', 0, 0, 0, 0, 0, '$sID')";
                $question_Number = ltrim($qNum,'q');
                $question_Number++;
                $qNum ='q'.$question_Number;
                $result = mysql_query($SQL);
            }*/
            mysql_close($db_handle);
            print "The student with the following ID ".$sID. " has been added to the database";
        }
    else {
        print "Database NOT Found ";
        mysql_close($db_handle);
    }

}
?>
<html>
<head>
<title>Survey Admin Page</title>
</head>
<body>

<FORM NAME ="setQuestionForm" METHOD ="POST" ACTION ="setStudent.php" id="sStudent">
            <p>Enter student ID: <INPUT TYPE = 'TEXT' Name ='studentID' size="4"></p>
            <p>Enter First Name: <input type="text" name="firstName" size="20"></p>
            <p>Enter Last Name: <input type="text" name="lastName" size="20"></p>
            <p>Select Grade: <select name = "grade">
                <option value = "1">First Grade</option>
                <option value = "2">Second Grade</option>
                <option value = "3">Third Grade</option>
                <option value = "4">Fourth Grade</option>
                <option value = "5">Fifth Grade</option>
                <option value = "6">Sixth Grade</option>
                <option value = "7">Seventh Grade</option>
                <option value = "8">Eighth Grade</option>                           
            </select></p>
            <INPUT TYPE = "submit" Name = "Submit1"  VALUE = "Add Student">
        </FORM>
    <P>



<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"></script>
<script>
    $(function(){
        if ($('form').length > 0) {
            $('form').submit(function(e){
                var check = "<?php echo $studentID; ?>";
                alert(check);
                if (check != "")
                {
                    alert ("This user already exists");
                    return false;
                }
                else
                {
                    return true;
                }
            });   
        } 
    }) 
</script>
</body>
</html>
$.ajax({
  type: "POST",
  url: url,
  data: data,
  success: success,
  dataType: dataType
});
$.post('ajax/test.html', function(data) {
  $('.result').html(data);
});
$(function () {
    if ($('form').length > 0) {
        $('form').submit(function (e) {
            e.preventDefault();
            $.ajax({
                type: "POST",
                url: "YOUR-URL",
                data: YOUR - FORM - DATA,
                success: function (result) {
                    //result will contain the xml or JSON result of calling the FORM
                    var check = "<?php echo $studentID; ?>";
                    alert(check);
                    if (check != "") {
                        alert("This user already exists");
                        return false;
                    } else {
                        return true;
                    }
                },
                dataType: "XML-OR-JSON"
            });
        });
    }
})