Dojo1.8-请求php文件,无需任何输入 在没有任何输入的情况下,我很难请求处理php文件。 我在login.php中使用PDO 我得到的错误是“无法加载processing.php,状态:500”

Dojo1.8-请求php文件,无需任何输入 在没有任何输入的情况下,我很难请求处理php文件。 我在login.php中使用PDO 我得到的错误是“无法加载processing.php,状态:500”,php,dojo,pdo,Php,Dojo,Pdo,main.php:- <head> <?php require_once '../scripts/login.php';?> //require action <head> <body> <div id='line1'></div> require(["dojo/request","dojo/domReady!"], function(request) {ready(fu

main.php:-

<head>
    <?php require_once '../scripts/login.php';?> //require action
<head>
<body>
<div id='line1'></div>

require(["dojo/request","dojo/domReady!"],                      
function(request)
{ready(function()
    {request('processing.php').then( //request action
     function(response){dom.byId(line1).innerHTML=response;},
     function(error){alert(error);
 });
    ......
</body>

//需要行动
require([“dojo/request”,“dojo/domReady!”),
功能(请求)
{ready(函数()
{request('processing.php')。然后(//请求操作
函数(response){dom.byId(line1.innerHTML=response;},
函数(错误){警报(错误);
});
......
processing.php:-

<?php
    echo "By default, fetch mk7BC data<br/>";
echo 
"<table border='1' cellspacing='0' cellpadding='2'>
<tr style='background-color:lightblue; font-weight:normal; font-size:small;'>
    <th style='width:40px'>ID</th>
    <th style='width:80px'>SN</th>
    <th style='width:100px'>Tested</th>
    <th style='width:40px'>Jig</th>
    <th style='width:80px'>Card</th>
    <th style='width:40px'>Batch</th>
    <th style='width:40px'>COM</th>
    <th style='width:40px'>3rdCOM</th>
    <th style='width:40px'>IO34</th>
    <th style='width:40px'>Comment</th>
</tr>";
    try
    (
        $dbh-> query('use testdata1970_10');
    $color='1';     
        foreach($dbh->query('call getallusers();') as $row)
        {if($color==1)
    {echo "<tr style='background-color:lightyellow; font-weight:lighter; 
            font-size:x-small;'>";
    $color='2';
        }
    else
            {echo"<tr style='background-color:lightgreen; font-weight:lighter;
            font-size:x-small;'>";
    $color='1';
    }

        echo
        "<td>{$row['idtest']}</td>
        <td>{$row['SN']}</td>
        <td>{$row['time_tested']}</td>
        <td>{$row['id_jig']}</td>
        <td>{$row['mfg_code']}</td>
        <td>{$row['batch_no']}</td>
        <td>{$row['com_status']}</td>
        <td>{$row['3rdcom_status']}</td>
        <td>{$row['IO34_status']}</td>
        <td>{$row['comment']}</td>
        </tr>";
            }
     echo "</table>";
    )
 ?>

Stackoverflow适用于特定的“我如何做X?”问题。对于“这是我所有的代码,请帮助我找到错误!”问题,它不是很好。您需要自己努力找到问题,然后提出特定的问题

例如,这是Javascript的问题吗?还是PHP的问题?或者SQL的问题

在本例中,您说打开processing.php返回错误500。这意味着该错误可能与您的Javascript无关。相反,可能是您的web服务器在运行php脚本时出现问题

processing.php有什么问题?它有语法错误吗?当您在浏览器中打开processing.php时,您可能会收到一条带有一些线索的错误消息。或者您的文本编辑器会突出显示错误?如果没有,请尝试运行

php -l processing.php
这将检查文件的语法错误。您可能会得到如下结果:

PHP Parse error:  syntax error, unexpected '(', expecting '{' on line 18
看起来您需要在第18行用
{
替换

因此,您再次修复该问题,
php-l
,并且在第47行看到相同的错误(几乎)。修复该错误。重复。看起来您有一个
尝试
,但没有相应的
捕获
!修复该错误。重复

最后,也许你仍然有一个问题——但现在你已经努力找到了问题所在,你可以问一个更好的问题


例如,processing.php中的$dbh来自何处?您是否将login.php包含在processing.php的顶部?

谢谢您的输入。现在一切都正常了。$dbh来自login.php,我需要main.php和processing.php中的\u once login.php。但是,我不明白为什么processing.php中需要\u once login.phplogin.php中的脚本可用于main.php中的所有脚本。由于login.php中$dbh在全局范围内,login.php是require_once,因此我需要main.php中的_once login.php,而不是processing.php。 对于eg

login.php - <?php $dbh="blah"?>
main.php - <?php require_once login.php?>
A.php - <?php $dbh... ?>
B.php - <?php $dbh... ?>
C.php - <?php $dbh... ?> 
login.php-
main.php-
A.php-
B.php-
C.php-

等等。我只是希望login.php能够一劳永逸地使用,而不是在每个脚本中重复require_一次。我读过了当一个文件被包含时,它包含的代码将继承包含所在行的变量范围。从那时起,调用文件中该行可用的任何变量都将在被调用文件中可用。“在PHP.net中。如果我错了,请更正。感谢Clement

Hi Frode。感谢您的输入。现在一切都好了。$dbh来自login.PHP,我需要main.PHP中的_oncelogin.PHP。当它不好用时,为什么我必须要求_oncelogin.PHP,不仅在main.PHP中,而且在processing.PHP中。我读到$GLOBALS(“变量”)在所有脚本和php文件中都可以使用。因此,如果在processing.php中login.php不是require_once,我将生成全局$dbh;但它仍然不起作用。看来,在所有php文件中,require_once login.php是唯一起作用的方法。如果我错了,请纠正我。谢谢Clement@user1739825是的,您必须在processing.php中要求login.php如果您想使用$dbh,则两个请求之间不会记住任何内容。在您的情况下,您首先对main.php执行一个请求。稍后,您会对processing.php执行一个请求。这些请求之间不会共享或记住任何内容,它们互不了解。全局变量只存在于一个请求“会话”中。
login.php - <?php $dbh="blah"?>
main.php - <?php require_once login.php?>
A.php - <?php $dbh... ?>
B.php - <?php $dbh... ?>
C.php - <?php $dbh... ?>