【发布时间】:2014-05-13 15:14:39
【问题描述】:
我有一个托管在 apache 服务器 (Plesk VPS) 上的网站(例如 site.com)。安装 phpMyAdmin 用于管理站点上的 MySQL 数据库。我使用 phpMyAdmin 中的“复制表”功能来复制现有表的结构和属性。我成功地将新数据导入到新表中。
我创建了一个新的子域 (xx.site.com) 并将其根目录分配给服务器上的 //httpdocs/new_site。复制现有的(工作的)php 脚本后查询旧表的数据
$fetch = mysql_query("SELECT * FROM tablename WHERE fieldname LIKE '$var' ");
while ($row = mysql_fetch_row($fetch)) {
echo "$row[0] $row[1] $row[2] $row[3] $row[4] $row[5]";
};
并将表名更改为新复制和填充的表,我得到一个空结果集。值得注意的是 php 脚本正常执行,没有错误,并且成功地将空结果集传回,这可以替换为 $var 的回显,建立查询不为空/空。
建立$var的代码是:
$var = $_GET['var']; //takes the pass from URL
if (empty($var))
die;
我该如何解决这个问题?应该寻找什么线索?哪些信息可以确定问题所在?
【问题讨论】:
-
在 phpMyAdmin 中运行查询是否得到结果?
-
嗯... 不管是不是子域,你觉得跟MySQL有关系,而不是你访问脚本的方式吗?
-
当查询没有提供您所期望的结果时,一个很好的起点是
echo查询,这样您就可以确切地查看发送到数据库的内容。在mysql_query呼叫之前尝试echo "SELECT * FROM tablename WHERE fieldname LIKE '$var' "。通常,当您看到查询时,您会立即看到问题。 -
您提到您使用 new 数据填充了表格 - 您的查询是否可能根本不匹配任何内容?也许一切都运行正常。
-
(顺便说一句:第一个问题不错!有足够的细节来获得一些关于尝试什么的建议。如果我能提出一个小问题,我建议尽快进入重点- 许多问题都添加了诸如“请保持友善”、“我是 X 的新手”等前言,它们并没有真正为问题添加任何内容。它们通常也会被编辑在这里编辑掉)。
标签: php mysql database subdomain