Php 访问mysql数据库和打印匹配结果时出现问题

Php 访问mysql数据库和打印匹配结果时出现问题,php,mysql,sql,url,Php,Mysql,Sql,Url,我写这段代码是为了从图像链接数据库中提取数据,以便更容易地更新天气链接。但是,它不会将图像链接打印到URL空间: <?php /* This code establishes MySQL connection,creates a function that pulls URLs from database to update picture file ? */ $datab ="weather"; $connect = new PDO("mysql:host=localhost;dbn

我写这段代码是为了从图像链接数据库中提取数据,以便更容易地更新天气链接。但是,它不会将图像链接打印到URL空间:

<?php
/* This code establishes MySQL connection,creates a function that pulls URLs from database to update picture file ? */

$datab ="weather";
 $connect = new PDO("mysql:host=localhost;dbname=$datab", "***", "*****");
function rainmaker($fname) {
$sql = $connect->query("SELECT link FROM `radar3`  WHERE `name` = `$fname`");
while($result = $sql->fetch(PDO::FETCH_ASSOC)){
$url1 = urlencode($result['name']);
print $url1;
};
?>


    //URL where the image link will be printed:

      <P><A HREF="../showImage.php?&url=<?=rainmaker('**$fname**')?>.php">North Plains</A></P>

//将打印图像链接的URL:


相反,它只打印php函数名代码

使用反勾号转义表名和列名,而不是引号

SELECT link FROM `radar3` WHERE `name` = '$fname'

仅对查询中的静态字符串使用引号。

也不要使用短标记
。它们不再得到维护。看到了吗?相反,学习,并使用or-将帮助您决定哪一个。如果您选择PDO,。对于新的开发,您确实应该使用mysqli扩展,而不是mysql_uu扩展)。From php.net():“从php 5.5.0开始,此扩展已被弃用,不建议用于编写新代码,因为它将在将来被删除。相反,应该使用mysqli或PDO_MySQL扩展。”您的代码错误地显示了从SQL查询中实际获得结果的部分。请检查mysqli\u fetch\u assoc
或类似内容。我按照你的要求做了,并将其转换为PDO。仍然需要帮助,请取消暂停。