-5

我创建了一个 php 页面和 javascript 代码,其中包含来自 PHP 页面的一些变量,这是一个使用 Javascript 将 php 变量插入数据库的代码:

<?php
     $id = "Kevin";
     $user = "Calvin";
?>
<!-- include jquery library file-->
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<!-- The ajax/jquery stuff -->
<script type="text/javascript">
    function send(e){
        if(e.keyCode == 13 && !e.shiftKey){

$(document).ready(function(){
   //Get the input data using the post method when Push into mysql is clicked .. we       pull it using the id fields of ID, Name and Email respectively...

//Get values of the input fields and store it into the variables.
    var msg=$("#reply").val();
    clear();
//here you start PHP->>
//here we put the PHP Variables ^^^^^^^^^///\\\

//use the $.post() method to call insert.php file.. this is the ajax request
   $.post('full.php', {msgg: msg, from: <?php echo json_encode($id); ?>, to: <?php echo json_encode($user); ?>},
    function(data){
        $("#message").html(data);
        $("#message").hide();
        $("#message").fadeIn(200); 
    });
    function clear() {
        $("#myre :input").each(  function() {
        $(this) .val('');
    });
    }
    }); 

   }
 } 
</script>

并在 full.php 页面中

<?php
     mysql_connect("localhost","root","");
     mysql_select_db("db");
     $to=mysql_real_escape_string($_POST['to']);
     $from=mysql_real_escape_string($_POST['from']);
     $msg=mysql_real_escape_string($_POST['msgg']);
     $to = mysql_real_escape_string($to);
     $from = mysql_real_escape_string($from);
     $msg = mysql_real_escape_string($msg);     
     if(empty($msg)){
        exit();
     }
    $query=mysql_query("INSERT INTO `message`(`user`,`who`,`message`) VALUES ('$to','$from','$msg')");
    if($query){
        echo "Perfect!";
    }else{
        echo "Failed!!";
?>

那么有没有办法将Javascript代码放入另一个页面并使用ajax注入它?

4

1 回答 1

0

将 PHP 变量的值分配给 java 脚本变量:

<script type="text/javascript">
    var json{
    "id":<?php echo $id;?>,
    "user" : "<?php echo $user;?>"
    };
</script>

从您的代码中更改此行:

 $.post('full.php', {msgg: msg, from: json.id, to: json.user}

现在您将拥有单独的 js 文件,例如:

      function send(e){
        if(e.keyCode == 13 && !e.shiftKey){

$(document).ready(function(){
//Get the input data using the post method when Push into mysql is clicked .. we pull it using the id fields of ID, Name and Email respectively...

//Get values of the input fields and store it into the variables.
var msg=$("#reply").val();
clear();
//here you start PHP->>
//here we put the PHP Variables ^^^^^^^^^///\\\

//use the $.post() method to call insert.php file.. this is the ajax request
$.post('full.php', {msgg: msg, from: json.id, to: json.user},
function(data){
$("#message").html(data);
$("#message").hide();
$("#message").fadeIn(200); 
});
function clear() {
$("#myre :input").each(  function() {
    $(this) .val('');
    });
}
}); 

   }
    } 

假设这个文件是 myjs.js 现在将它包含在 php 文件中:

<script type="text/javascript" src="myjs.js" />
于 2013-07-12T12:08:41.383 回答