是我的对row[]的处理不对吗?
新手求助:
<?php
$con = mysql_connect("localhost","root","199026");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
$dbselect = mysql_select_db("andy", $con);
if ( !$dbselect ) {
echo "select db fail";
}
$sql = "select netId from student";
$result = mysql_query($sql);
if ( !$result ) {
echo "<script language=javascript>alert('sql error!');history.back();</script>";
}
$i = 0;
while ( $row = mysql_fetch_array($result) ) {
echo " <option value=$row[$i]>$row[$i]</option>";//问题应该在这里吧= =|
$i = $i + 1;
}
mysql_close($con);
?>
新手求助:
<?php
$con = mysql_connect("localhost","root","199026");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
$dbselect = mysql_select_db("andy", $con);
if ( !$dbselect ) {
echo "select db fail";
}
$sql = "select netId from student";
$result = mysql_query($sql);
if ( !$result ) {
echo "<script language=javascript>alert('sql error!');history.back();</script>";
}
$i = 0;
while ( $row = mysql_fetch_array($result) ) {
echo " <option value=$row[$i]>$row[$i]</option>";//问题应该在这里吧= =|
$i = $i + 1;
}
mysql_close($con);
?>
echo " <option value=$row[$i]>$row[$i]</option>";//问题应该在这里吧= =|
$i = $i + 1;
}----------------------------------------------while ( $row = mysql_fetch_array($result) ) {
foreach($row as $value){
echo " <option value=$value>$value</option>"; //这样看一下有什么。。
}
}
//echo " <option value=$row[$i]>$row[$i]</option>";//问题应该在这里吧= =|
改成
echo " <option value=$row[0]>$row[1]</option>";//问题应该在这里吧= =|
因为$row也是数组
就是mysql里面一行数据$i = $i + 1;
}
queryphp网站自动生成HTML,从SEO优化中解脱出来
-------------------------------------------------
http://topic.csdn.net/u/20100331/21/0ac266ec-1910-483b-9f91-4d781a773b96.html
但所有数据都被copy了一遍
就是说同一个数据被输出了两次,有什么办法改呢
$row = mysql_fetch_array($result,MYSQL_ASSOC)
queryphp网站自动生成HTML,从SEO优化中解脱出来
-------------------------------------------------
http://topic.csdn.net/u/20100331/21/0ac266ec-1910-483b-9f91-4d781a773b96.html
现在正确的代码如下:
while ( $row = mysql_fetch_array($result,MYSQL_ASSOC) ) {
foreach($row as $value){
echo " <option value=$value>$value</option>";
}
}
我怎么觉得foreach是把数组当前内容copy一份?
如果$row 是一维 $value则是数组元素
如果$row 是二维 $value则是数组
利用mysql_fetch_array查出来的是一维数组,那你不需要脚标的变化了,直接$row[0]
或者直接用字段的名称吧$row[netId]
{
foreach($row as $value){
echo " <option value=$value>$value</option>";
}
}
echo " <option value=$row[$i]>$row[$i]</option>";//问题应该在这里吧= =|
$i = $i + 1;
你可以改成用for
$m_rows=mysql_num_rows($result);
for($m_i=0;$m_i<$m_rows;$m_i++){
$row = mysql_fetch_array($result)
echo " <option value=$row[netId]>$row[netId]</option>";
}