简体   繁体   English

PHP / MySQL的返回如何返回到调用页面?

[英]How does the return from PHP/MySQL get back into the calling page?

I've dummied up the page here: http://bsaroundtable.org/scota/testit.php All you need to do to run it is hit the submit button. 我已经在这里将页面弄糊涂了: http : //bsaroundtable.org/scota/testit.php要运行它,您需要做的所有事情都是点击“提交”按钮。 A value is already supplied. 已提供一个值。 Below is the editDBlisting.php code that it is supposed to use to build (in this case) a table. 下面是应用于构建表的editDBlisting.php代码。

But I never get anything back except most of the echo("in the php, str = $q"); 但是,除了大多数echo(“在php中,str = $ q”)之外,我什么也得不到。 and then only the text and not the value of $q. 然后只有文字,而不是$ q的值。 So I understand that its not getting to the PHP. 因此,我知道它并没有进入PHP。 But why? 但为什么? I've tried GET instead of POST, plus nearly every other combination available. 我尝试使用GET而不是POST,以及几乎所有其他可用组合。

This is nearly line for line what I'm doing in another place and it works perfectly so no doubt I've got a little error that I can't find. 这几乎是我在另一个地方所做的工作,而且工作正常,因此毫无疑问我有一个我找不到的小错误。 Please help me find the issue. 请帮助我找到问题。

This time you can make fun of me for not seeing it. 这次您可以因为没看到我而取笑我。
{ {

/*  Title: editDBlisting.php
     Written: 2016=07-12
     Reference:
*/

    ini_set("display_errors",1); 
    error_reporting (E_ALL ^ E_NOTICE);

    require_once "dbConnectDtls.php";

    define("CONST_USER_TIMEZONE", "America/Chicago");
    /* server timezone */
    define("CONST_SERVER_TIMEZONE", "CST");

    /* server dateformat */
    define("CONST_SERVER_DATEFORMAT", "Y-m-d H:i:s");

    function now($str_user_timezone = CONST_USER_TIMEZONE,
       $str_server_timezone = CONST_SERVER_TIMEZONE,
       $str_server_dateformat = CONST_SERVER_DATEFORMAT) {

      // set timezone to user timezone
      date_default_timezone_set($str_user_timezone);

      $date = new DateTime("now");
      $date->setTimezone(new DateTimeZone($str_server_timezone));
      $str_server_now = $date->format($str_server_dateformat);

      // return timezone to server default
      date_default_timezone_set($str_server_timezone);

      return $str_server_now;
    }

    $dttm_change  = now(CONST_USER_TIMEZONE,CONST_SERVER_TIMEZONE,CONST_SERVER_DATEFORMAT);

        $q = $_POST["str"];

        echo("in the php, str = $q");

        $stmt = $db_found->prepare("SELECT * FROM SCOTA WHERE edit_code = '$q' ");

        $stmt->execute();

        $result = $stmt->fetchAll();

        foreach($result as $row) {

            echo ("<table id='feedback'>
            <col><col><col><col><col><col><col><col><col>
            <thead style='text-align: center;'>
                <tr>
                    <th>CRN</th>
                    <th>Registrar</th>
                    <th>Call Sign</th>
                    <th>eMail</th>
                    <th>Youth</th>
                    <th>Adult</th>
                    <th>Camp Name</th>
                    <th>Official</th>
                    <th>City</th>
                </tr></thead><tbody><tr>");

            echo ("<td class=\"edit\" id=\"campRegNumber:$row[id]\">$row[campRegNumber] </td>");
            echo ("<td class=\"edit\" id=\"name:$row[id]\">$row[name] </td>");
            echo ("<td class=\"edit\" id=\"callSign:$row[id]\">$row[callSign] </td>");
            echo ("<td class=\"edit\" id=\"eMail:$row[id]\">$row[eMail] </td>");

            echo ("<td class=\"edit\" id=\"adultCount:$row[id]\">$row[adultCount] </td>");
            echo ("<td class=\"edit\" id=\"youthCount:$row[id]\">$row[youthCount] </td>");
            echo ("<td class=\"edit\" id=\"campName:$row[id]\">$row[campName] </td>");

            echo ("<td class=\"edit\" id=\"official_scout_camp:$row[id]\">$row[official_scout_camp] </td>");
            echo ("<td class=\"edit\" id=\"city:$row[id]\">$row[city] </td>");
            echo ("</tr></tbody></table>");
            echo ("<br><br>");

            echo ("<table id='feedback'>
            <col><col><col><col><col><col><col><col><col><col><col>
            <thead style='text-align: center;'>
                <tr>
                    <th>State</th>
                    <th>Country</th>
                    <th>Latitude</th>
                    <th>Longitude</th>
                    <th>Grid</th>
                    <th>Power</th>
                    <th>Date Start</th>
                    <th>Time Start</th>
                    <th>Time End</th>
                    <th>Date End</th>
                    <th>Comments</th>
                </tr>
            </thead><tbody><tr>");
            echo ("<td class=\"edit\" id=\"state:$row[id]\">$row[state] </td>");
            echo ("<td class=\"edit\" id=\"country:$row[id]\">$row[country] </td>");
            echo ("<td class=\"edit\" id=\"latitude:$row[id]\">$row[latitude] </td>");
            echo ("<td class=\"edit\" id=\"longitude:$row[id]\">$row[longitude] </td>");
            echo ("<td class=\"edit\" id=\"grid:$row[id]\">$row[grid] </td>");
            echo ("<td class=\"edit\" id=\"power:$row[id]\">$row[power] </td>");
            echo ("<td class=\"edit\" id=\"dateStart:$row[id]\">$row[dateStart] </td>");
            echo ("<td class=\"edit\" id=\"timeStart:$row[id]\">$row[timeStart] </td>");
            echo ("<td class=\"edit\" id=\"timeEnd:$row[id]\">$row[timeEnd] </td>");
            echo ("<td class=\"edit\" id=\"dateEnd:$row[id]\">$row[dateEnd] </td>");
            echo ("<td class=\"edit\" id=\"comments:$row[id]\">$row[comments] </td>");

        }

        echo ("</tr></tbody></table>"); 

?>

} }

Maybe there is more than one mistakes, but what I can see is that in the form on the page testit.php you have set name of input to getCode , but in editDBlisting.php you have line $q = $_POST['str']; 也许有不止一个错误,但我所看到的是,在页面的表单testit.php您设置输入的名称getCode ,但在editDBlisting.php你行$q = $_POST['str']; instead of $q = $_POST['getCode']; 而不是$q = $_POST['getCode'];

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM