1

我的网站中有一个 INSERT 操作,它的工作原理是这样的。

  1. 当按下按钮时,在 index.html 文件中调用一个 javascript 函数。
  2. 在 javascript 函数中,AJAX 用于将请求发送到带有必要参数的 php 文件
  3. php 文件访问数据库插入数据。

上述任务的代码供您参考。

2.Javascript函数

function grandFinale()
{
        if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else
  {// code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xmlhttp.onreadystatechange=function()
  {
  if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
    //document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
    }
  }
xmlhttp.open("GET","insert.php?q=&name=" + encodeURIComponent(document.getElementById('name').value) + "&txtScore1=" + encodeURIComponent(document.getElementById('txtScore1').innerHTML),true);
xmlhttp.send();
document.location.reload();

}

1.HTML按钮

<p id="txtScore1" align="center" style="color: #cc6699; font-size: 18px; "></p>
<label class="control-label" for="input01">Name</label>
<a href="#" class="btn btn-primary" onclick="javascript:grandFinale()" >Submit My Score</a>

3.PHP脚本

<?php
    $con = mysql_connect("host","uname","pword");
    if (!$con)
      {
      die('Could not connect: ' . mysql_error());
      }

    mysql_select_db("dbname", $con) or die( "Unable to select database");

    $sql="INSERT INTO 'masterTable' ('Name', 'Score') VALUES ('{$_GET['name']}','{$_GET['txtScore1']}')";

    if (!mysql_query($sql,$con))
      {
      die('Error: ' . mysql_error());
      }
    echo "1 record added";

    mysql_close($con);
    ?>

当我在硬盘上本地尝试时一切正常,但在我将它托管在 000webhost.com 上之后,INSERT 不起作用。你能建议我哪里出错了吗?

4

1 回答 1

2

我将首先检查您在 000webhost.com 上为数据库 (uname) 设置的用户是否具有 INSERT 权限。

于 2012-08-06T02:14:10.583 回答