好的,我第一次在这里提问。这在过去非常有帮助,但现在我迷失了。 我试图理解php如何在一本书的帮助下工作。所以我按照书中所示的那样进行了练习,如果不是它应该是什么结果。
以下是代码:
<div id="content">
<p>Here's a record of everything in the REQUEST array:</p>
<?php
foreach($_REQUEST as $value) {
echo "<p>" . $value . "</p>";
}
?>
</div>
<div id="footer"></div>
</body>
这是结果:
以下是REQUEST数组中所有内容的记录:
" . $value . " "; } ?>
为什么不显示它所假设的信息?感谢。
好的,这里是所有代码:
showRequestInfo.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
> "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html
> xmlns="http://www.w3.org/1999/xhtml"> <head> <meta
> http-equiv="Content-Type" content="text/html; charset=utf-8" /> <link
> href="/wamp/www/livrephp/css/phpMM.css" type="text/css"
> rel="stylesheet" />
>
> <title>Untitled Document</title> </head>
>
> <body> <div id="header"><h1>PHP & MySQL: The Missing
> manual</h1></div>
> <div id="example">Example 3-2</div>
>
> <div id="content">
> <p>Here's a record of everything in the REQUEST array:</p>
> <?php foreach($_REQUEST as $value) { echo "<p>" . $value . "</p>"; } ?>
>
>
> </div>
> <div id="footer"></div> </body> </html>
这就是这个名为“socialEntryForm.php”的文件
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link href="/wamp/www/livrephp/css/phpMM.css" rel="stylesheet" type="text/css" />
<title>Untitled Document</title>
</head>
<body>
<div id="header"><h1>PHP & MySQL: The misiing manual</h1></div>
<div id="example">Example -1</div>
<div id="content">
<h1>Join the missing manual (Digital) Social Club</h1>
<p>Please enter your online connections below:</p>
<form action="../showRequestInfo.php" method="post">
<fieldset>
<label for="first_name">First Name:</label>
<input type="text" name="first_name" size="20" /><br />
<label for="last_name">Last Name:</label>
<input type="text" name="last_name" size="20" /><br />
<label for="email">Email Address:</label>
<input type="text" name="email" size="50" /><br />
<label for="facebook_url">Facebook URL:</label>
<input type="text" name="facebook_url" size="50" /><br />
<label for="twitter_handle">Twitter Handle:</label>
<input type="text" name="twitter_handle" size="50" /><br />
</fieldset>
<br />
<fieldset class="center">
<input type="submit" value="Join The Club" />
<input type="reset" value="Clear and Restart" />
</fieldset>
</form>
</div>
<div id="footer"></div>
</body>
</html>
答案 0 :(得分:8)
您确定您的文件是PHP文件并且它是在支持PHP的服务器上运行的吗?浏览器似乎正在接收未解析的代码,认为标记从<?php
开始并在第一个<p>
标记处结束。如果你查看源代码,你可能会看到你的PHP代码,不受服务器的影响。
换句话说:您的代码是正确的,问题是您的文件类型或服务器配置。如果确实使用了计算机上的服务器,请确保您正确运行该文件,例如:如果它在根目录中,请打开http://localhost/your_file.php
,而不是C:\xampp\htdocs\your_file.php
。
编辑:为了解决这个问题,我用fiddle复制了您的问题。我得到了与你完全相同的输出,这意味着它不会被服务器解析。谁说JSFiddle只对JavaScript有用?
答案 1 :(得分:0)
$_REQUEST
包含从Cookie $_POST
和$_GET
收集的数据。您确定您的数据已正确分配吗?
举个例子。
print_r($_REQUEST);
只是在没有<form method="get/post">
的情况下这样做会产生一个空白数组,这可能就是你什么都没得到的原因
你的代码片段是正确的..你缺少一个html表格可以用...
示例:
<form method="POST">
<input type="submit" name="test" value="ThisIsCorrect">
</form>
使用您的代码,您已经显示了您的问题..您的$_REQUEST
数组将返回按钮的值。在这种情况下“ThisIsCorrect”
道德这个?
确保在调用$ _REQUEST之前使用post / get / cookies,并且为了将来参考,只需使用$ _POST&amp; $ _GET使用起来比较干净..但这取决于我个人的偏好。
如何构造$ _REQUEST数组?
考虑一下:
数组将包含name
作为数组键,值为值..
所以考虑到这一点:
<form method="POST">
<input type="text" name="username">
<input type="submit" name="test" value="ThisIsCorrect">
</form>
对于您的文本框&amp;提交按钮阵列将是:
array ("username" => "UserInputData",
"test" => "ThisIsCorrect");