gpt4 book ai didi

php - 使用小型客户端从数据库帮助中使用 $_GET 检索信息。 PHP 和 MySQL

转载 作者:行者123 更新时间:2023-11-30 22:46:01 25 4
gpt4 key购买 nike

我制作了一个数据库,它可以工作并输入了值,我还使用 PHP 制作了一个服务页面,这也非常感谢这里的人!所以我可以查询它并且它工作正常例如

http://localhost/NewWebApp/php/databaseRestService.php?episodename=Pilot
//Outputs: "7th October 2014"

这是正确的,但是当我使用客户端(输入字段)时,我没有得到任何返回。完全没有。我再次检查了我的所有代码,并做了很少的 if 语句来查看问题可能出在哪里,并且我已将其列入我的 $data 变量的候选名单。此客户端的代码如下。

<!doctype html>
<html lang="en">
<head>
<?php
if(isset($_GET["submit1"]))
{
$episodeNameForFlash = $_GET["episodename"];

$url = "http://localhost/NewWebApp/php/databaseRestService.php?episodename ='".$episodeNameForFlash."'";

$client = curl_init($url);
curl_setopt($client,CURLOPT_RETURNTRANSFER,1);
$data = curl_exec($client);
echo curl_error($client);

if(!$data)
{
echo "Error on data";
}
}
?>
</head>
<body>
<form action="databaseRestClient.php" method="GET">
<label>Enter Name of Episode</label> &nbsp; <input type="text" name="episodename"/>
&nbsp;
<input type="submit" name="submit1"/><br/>
</form>
<?php
if(isset($data))
{
echo ("The date of the Episode is ". $data);
}
?>
</body>
</html>

因此输出为:数据错误。

有谁知道我做错了什么?几个小时以来一直在努力解决这个问题。

基兰

更新:databaseRestService.php 代码

    <?php

class FlashEpisodes
{
var $serverName = "localhost";
var $userName = "root";
var $password = "";
var $databaseName = "test";

public function FlashEpDate($name)
{
$databaseConnection = mysqli_connect($this->serverName, $this->userName, $this->password);

if(!$databaseConnection)
{
// echo "Error";
}
if(!mysqli_select_db($databaseConnection, $this->databaseName))
{
//echo "Error";
}
else
{
//echo "Success";
}

$sql = "SELECT theFlashEpsDate FROM superhero WHERE theFlashEps ='".$name."'";
$result = mysqli_query($databaseConnection, $sql);

if(!$result)
{
echo "<br>Error on Query";
}
if ($result)
{
$row = mysqli_fetch_array($result, MYSQLI_NUM);
$getTheFlashEpsDate = $row[0];
}
else
{
$getTheFlashEpsDate = null;
}
return $getTheFlashEpsDate;
}
}

$getEpisodeName = $_GET['episodename'];
$objSuperHero = new FlashEpisodes;
$response = $objSuperHero->FlashEpDate($getEpisodeName);
echo $response;
?>

^ 这里的代码可以正常工作,我可以将查询放入字符串中,这个页面可以工作,就在我想使用客户端(输入字段)时它不会:(

最佳答案

定义$urldatabaseRestClient.php 文件中的变量,为什么 $episodeNameForFlash单引号范围?我认为这些单引号是问题的原因,删除它们并再次检查您的代码。

那一行应该是这样的:

$url = "http://localhost/NewWebApp/php/databaseRestService.php?episodename =".$episodeNameForFlash;

你最好用urlencode编码 $episodeNameForFlash$url 中使用它之前的变量如果 $episodeNameForFlash 中有任何特殊字符变量,然后使用 urldecodedatabaseRestService.php检索 $_GET['episodename'] 时的文件

关于php - 使用小型客户端从数据库帮助中使用 $_GET 检索信息。 PHP 和 MySQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29579573/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com