2014-02-13 38 views
0

我有一個問題:PHP回聲只以特定的順序

if(isset($_POST['send'])){ 
$id = mysql_real_escape_string($_POST['id']); 
$query = mysql_query("select * from somewhere where id='$id'"); 
$row = mysql_fetch_array($query); 
    if(!mysql_num_rows($query)==1){ 
    echo('error'); 
     } 

    } 

在此之後我從分貝該回波:

<input type="text" name="up_name" value="<?php echo $row['name'];?>" id="up_name"/> 

和該回波:

<select> 
<?php 
$up_id=$_POST['up_id']; 
$sqlDateUser=mysql_query("SELECT `something` from `somewhere` where id='".$id."'"); 
$res=mysql_fetch_assoc($sqlDateUser); 
$somethig_selected=$res['something']; 
$something=mysql_query("SELECT `den` FROM `jud`"); 
while($row = mysql_fetch_row($something)){ 
    $selected=($row[0]==$somethig_selected)?'selected':''; 
    echo "<option value='".$row[0]."' ".$selected.">".$row[0]."</option>"; 
} 
?> 
</select> 

在這個順序一切正常,但如果我改變它,第一個回聲不起作用。我需要顯示和其他行之後,我不知道第二個回聲有什麼問題。有人能告訴我什麼是問題嗎?

回答

0

這可能是一個命名問題。例如,您有第二個查詢將mysql_fetch_row的值分配到名爲$row的變量中。

這也是你給你的第一個查詢的同名,你在哪裏分配你的mysql_fetch_array

我可能會嘗試命名他們不同的東西,如$row_get_user_info$row_get_den來區分它們。此外,如果在移動第一行echo行時移動與之相關的查詢,它會更容易。 (讓他們在一起。)

+0

你說得對,現在沒關係。非常感謝! – user3080279

+0

只要提一下,你應該開始使用MySQLi。從PHP 5.5.0開始,MySQL API已折舊;) – OllyBarca