簡體   English   中英

使用angular.js和php提交數據后無法顯示成功消息

[英]Can not display the success message after submit data using angular.js and php

使用Angular.js和PHP提交數據后,我無法顯示成功消息。 我正在使用警報提示來顯示消息,但它向我顯示了undefined的輸出。我在下面解釋我的代碼。

createSubjectData.php:

<?php
$course_name=stripslashes($_POST['course_name']);
$sub_name=stripslashes($_POST['sub_name']);
$semester=stripslashes($_POST['semester']);
$sub_short_name=stripslashes($_POST['sub_short_name']);
$con = mysql_connect('localhost', 'root', '******');
mysql_select_db('go_fasto', $con);
 $qry ='INSERT INTO db_subject (subject_name,short_name,semester,course_name) values ("' . $sub_name . '","' . $sub_short_name . '","' . $semester . '","' .$course_name . '")';
$qry_res = mysql_query($qry);
if ($qry_res){
        $result['msg'] = "subject has added successfully";
    } else {
         $result['msg'] =  "subject could not added ";
    }
$query='SELECT * from db_subject order by subject_id desc';
$res=mysql_query($query);
$result=mysql_fetch_array($res);
echo json_encode($result);
?>

我的控制器代碼如下。

var subjectData={'course_name':$scope.courseName.value,'semester':$scope.semester.value,'sub_short_name':$scope.subject_short_name,'sub_name':$scope.subjectname};
                console.log('subject',subjectData)
                $.ajax({
                    method: 'POST',
                    url: "php/subject/createSubjectData.php",
                    data: subjectData,
                    dataType: 'json',
                    success: function(response){
                        $scope.$apply(function(){
                        alert(response.msg);
                        $scope.courseName=null;
                        $scope.semester=null;
                        $scope.subject_short_name=null;
                        $scope.subjectname=null;
                        //$scope.subjectData.push(response);
                        $scope.subjectData.unshift(response);
                        });
                    },
                    error: function(response){
                        alert(response.msg);
                    }
                })

請幫助我解決此問題。

您將在此行完全覆蓋$result變量

$result=mysql_fetch_array($res);

你設置 $result['msg']="..."這樣的味精會丟失。

順便說一句:您的代碼中有一個SQL注入問題。 在將輸入變量添加到查詢字符串或用戶mysql准備的語句mysqli_stmt之前,使用mysql_real_escape_string()清理輸入變量。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM