我是一个业余爱好者程序员,并坚持使用php和sql
我有一个网站,我希望允许不同的用户列出他们的域名和网站出售。我有一个SQL数据库,其中包含以下字段:id
,domain
和price
。现在我添加了一列数据,其中" namer"是字段名称。
我正在尝试提取字段" namer"所以它出现在网站上,但它不会起作用。
问题始于代码中的// PROBLEM AREA
,之后div
即可。
<div class="domain_list_item_main_linear" style="font-family: 'Open Sans', Arial; width:98%;">
<div style="width:33%;float:left;">
<a href="<?php /*?><?php echo ConfigPeer::GetValue('website_folder'); ?>
<?php echo $domain->getCleanName(); ?><?php */?>https://www.afternic.com/domain/<?php echo urlencode($domain); ?>" class="moLPdomain" target="_blank">
<?php echo html_entity_decode($domain->getDivTipNameLinear(), ENT_QUOTES); ?></a>
<?php if(!$domain->getIsSold()): ?>
</div>
<div class="moLPprice" style="width:22%;float:left;margin-left:0px;">
<?php
// PROBLEM AREA
$eventid = $_GET['id'];
$namer = $_GET['namer'];
$result = mysql_query("SELECT $namer FROM `domain` WHERE `id` = '$eventid' ");
$row = mysql_fetch_array($result);
echo $row[$namer];
?> </div>
答案 0 :(得分:0)
问题在于您使用的是$namer
。
SELECT之后的部分应包含列的名称,其中包含您要提取的数据。查看代码时,$namer
不是列的名称,而是您尝试匹配的一些数据。
所以SQL的结构应该是这样的:
SELECT column_name FROM table_name WHERE a_column_name = a_val;
我建议你看看SQL SELECT语句,w3school是一个很好的起点:
http://www.w3schools.com/php/php_mysql_select.asp
编辑:
你的SQL应该是这样的:
SELECT namer FROM domain WHERE id = $eventid;
如果您想获得具有该ID的域名的'namer'。
您是变量$namer
必须存储以下任何字词才能运行查询:
id
domain
price