Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/253.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回显Jquery以执行.post();打开。单击();结果是我无法解释的查询_Php_Jquery_Mysql_Ajax - Fatal编程技术网

使用PHP回显Jquery以执行.post();打开。单击();结果是我无法解释的查询

使用PHP回显Jquery以执行.post();打开。单击();结果是我无法解释的查询,php,jquery,mysql,ajax,Php,Jquery,Mysql,Ajax,我搜索过,编辑过,重新编辑过,我被JSLint屈尊并重新测试过。我已经达到了我所知道的实际极限,我没有使用Firebug或其他工具来更具体地隔离问题的经验。给一个小男孩指出正确的方向 以下是我认为有问题的代码: echo '<script type="text/javascript">' . "\n"; echo '$(document).ready(function() {' . "\n"; echo '$("#' . $row['firstname'] . $row['la

我搜索过,编辑过,重新编辑过,我被JSLint屈尊并重新测试过。我已经达到了我所知道的实际极限,我没有使用Firebug或其他工具来更具体地隔离问题的经验。给一个小男孩指出正确的方向

以下是我认为有问题的代码:

echo '<script type="text/javascript">' . "\n";
echo '$(document).ready(function() {' . "\n";   
echo '$("#' . $row['firstname'] . $row['lastname'] . '").click(function() {' . "\n";
echo '  $.post("http://example.com/publish.php", { fname: "' . $row['firstname'] . '", lname: "' . $row['lastname'] . '", input: "' . $published['input'] . '", table: "' . $q . '" });' . "\n";
echo 'e.preventDefault();' . "\n";
echo 'return false;' . "\n";
echo '     });' . "\n";
echo '});' . "\n";
echo '</script>';
如果我写:

$.post("http://example.com/publish.php", { fname: "Firstname", lname: "Lastname", input: "1", table: "Tablename" });
直接在控制台中,我将在Tablename中将user Firstname Lastname的发布状态从0更改为1。如果单击该按钮,地址栏中将显示一个无意义的字符串:

http://example.com/outreach.php?names=Tablename&names=None
这到底是怎么回事?

提前感谢您阅读到这里。期待着解决这个问题!哈哈

补充说明:

PHP 5.3.x
Jquery is called in the head.
All table names contain a number of dashes - could this be causing the string to turn into rubbish? e.g outreach.php?names=Ta-bl-ena-me&names=None
下面是outlooking.php如何请求表名列表。在更改时,这将作为Ajax发送到getnames.php,然后getnames.php将html/js以前面提到的表格的形式发送回outlook.php(没有问题)。这就是为什么我现在想我可能需要回到绘图板上

<?php   while($showtablerow = mysql_fetch_array($showtablequery_result))    {   echo "<option>" . $showtablerow[0]."<br />" . "</option>";  } ?>

好的,到目前为止,我刚刚清理了一下您的代码,以提高可读性。我认为发布参数时出现了一些问题。它们也会出现在url中吗

<script type="text/javascript">
    $(document).ready(function() {
        $("#<?php echo $r['firstname'] . $r['lastname']; ?>").click(function(e) {
        $.post("http://thinknextmedia.com/publish.php", 
            { fname: "<?php echo $r['firstname']; ?>", 
              lname: "<?php echo $r['lastname']; ?>", 
              input: "<?php echo $published['input'] ?>", 
              table: "<?php echo $q ?>" });
        return false;
        });
    });
</script>

$(文档).ready(函数(){
$(“#”)点击(函数(e){
$.post(”http://thinknextmedia.com/publish.php", 
{fname:“”,
名称:“,
输入:“,
表1);
返回false;
});
});

首先,我是否可以建议不要通过php回显js/html?只需中断php,编写js并继续。仅在php标记中添加js参数。这有点像噩梦,以后需要调试。这是否是导致您当前问题的原因值得怀疑,但它看起来不像您的单击处理程序中的
e
实际上绑定到了任何东西。缺少函数参数?同意,e应为@..'$(文档).ready(函数(e)…但我想这并不是原因。好吧,如果不通过php重复js和html,我可能不得不回到绘图板上。等一下,用outlooking.php更新我的帖子。好吧,它会起作用。这只是一种不好的做法。像这样混合肯定会把某个报价搞砸,让你找一天来找到它:)我的错误。那不应该在那里。我累了,把它放错地方了。我已经移除了,但你们是对的;它并没有解决我眼前的问题。假设extraction.php是发送Ajax请求的文件,那么可能有问题。我也可以看一下代码吗?
<?php   while($showtablerow = mysql_fetch_array($showtablequery_result))    {   echo "<option>" . $showtablerow[0]."<br />" . "</option>";  } ?>
<script type="text/javascript">
    $(document).ready(function() {
        $("#<?php echo $r['firstname'] . $r['lastname']; ?>").click(function(e) {
        $.post("http://thinknextmedia.com/publish.php", 
            { fname: "<?php echo $r['firstname']; ?>", 
              lname: "<?php echo $r['lastname']; ?>", 
              input: "<?php echo $published['input'] ?>", 
              table: "<?php echo $q ?>" });
        return false;
        });
    });
</script>