इसे आजमाएं:
echo '<select>';
$tempholder = array();
$rs = mysql_query("SELECT * FROM id ORDER BY year");
$nr = mysql_num_rows($rs);
for ($i=0; $i<$nr; $i++){
$r = mysql_fetch_array($rs);
if (!in_array($r['year'], $tempholder)){
$tempholder[$i] = $r['year'];
echo "<option".(($year==$r["year"])? ' selected="selected"' : '').">".$r["year"]."</option>";
}
}
unset($tempholder);
echo '</select>';
यह राज्य को उस चर में सहेजता नहीं है जिसे आपको अधिलेखित करना है।
और मुझे लगता है कि वास्तविक त्रुटि $year=$r["year"] में एकल बराबर चिह्न थी और शेष कोड के साथ नहीं थी।