php - 使用 JavaScript(或 AJAX?)动态添加 PHP/MySQL 代码

标签 php javascript mysql ajax

我不得不问这个问题是因为我卡住了,我认为这是因为我对 PHP 和 JavaScript 的理解还没有完全形成。 我认为我开始尝试这样做的方式可能非常非常错误,但没有人的问题对我有意义。

基本上: 我正在尝试在表单上添加一个 JavaScript 按钮,该按钮将添加额外的表单输入框,同时在 PHP 中添加额外的 SQL 代码,以将新表单中的数据插入到我的数据库中。

我的 JavaScript 看起来像这样..

    function addElement2() {

var ni = document.getElementById('SQLphoneDiv'); 
    var numi = document.getElementById('theValue2'); 
    var num = (document.getElementById('theValue2').value -1 + 2); 
    numi.value = num; 
    var newdiv = document.createElement('div'); 
    var divIdName = 'SQLphoneDiv'+num+''; 
    newdiv.setAttribute('id',divIdName); 
    newdiv.innerHTML = ' <input type=hidden id=' +num+ ' value=' +num+ '> <?php      $insert_phone = "INSERT INTO phone (Phone_Cust_ID,Phone_Numb,Ext) VALUES    (\'$cust_ID[0]\',\'".$_POST[\'phone' +num+ '\']."\',\'".$_POST[\'ext' +num+ '\']."\')";    $add_phone = mysql_query($insert_phone); ?>'; 
    ni.appendChild(newdiv); 
    }

“newdiv.innerHTML”是所有代码所在的地方,当我的 JavaScript 运行时,它将它发送到我的 PHP 页面上的 DIV。

     <?php
    if (isset($_POST['submit'])) { 

         //add aditional phone numbers

         echo    '<input type="hidden"  value="0" id="theValue2" />';
         echo    '<div id="SQLphoneDiv"></div>';
     ?>

我发现将 echo 部分放在“if”部分之外会使代码在我点击添加按钮时实际显示出来(至少 DIV 显示出来,当然它在 Dreamweaver 的实时模式下不显示 PHP ).

所以不管怎样,如果我理解我只是弄清楚这是完全错误的,因为 PHP 是在页面运行后设置的,所以在事后尝试添加更多代码是没有意义的。 我在想这个吗?你实际上会怎么做? AJAX 有问题吗?

非常感谢任何提示。

内森

最佳答案

PHP 在页面发送到客户端之前在服务器上运行。 JavaScript 在客户端上运行。 AJAX 将是必经之路。

关于php - 使用 JavaScript(或 AJAX?)动态添加 PHP/MySQL 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10112922/

相关文章:

php - 表单域不显示

php - 如何从 MYSQL 查询正确创建表

php - 如何防止将所有内容都包含在一个文件中?

javascript - Zingchart:使用标记在规则中定位多个系列

javascript - Safari 5 扩展无需打开窗口即可加载 URL

php - Drupal 数据库连接查询

javascript - 我怎样才能延迟一个功能

mysql - 我应该在多个数据库之间拆分数据还是将它们保存在一个数据库中?

mysql - 每年统计 每月至少一次频繁点餐的总人数

java - 为什么 hibernate 将 tinyint(1) 映射到 java.lang.Boolean?