2017-07-06 3 views
-2

Ich habe vor kurzem beschlossen, mein wirklich altes Projekt, das ich mit der neueren Version von PHP hatte, zu testen, also musste ich von mysql_fetch_assoc() zu mysqli_fetch_assoc() wechseln.mysqli_fetch_assoc() gibt Daten zweimal zurück

jedoch auf es auf meinem localhost der Daten ausgeführt werden zweimal zurückgegeben.

Hier ist das Code-Snippet. Jede Hilfe wird geschätzt.

Vielen Dank im Voraus :)

<?php 
$query = 'SELECT people_id, people_fullname FROM people WHERE people_isactor = 1 ORDER BY people_fullname;'; 
$result = mysqli_query($con,$query) or die(mysqli_error($con)); 

//populate the select options with the result 
while($row = mysqli_fetch_assoc($result)){ 
    foreach($row as $value){ 
     if($row['people_id'] == $movie_leadactor){ 
      echo '<option value="'.$row['people_id'].'"selected="selected">'; 
     }else{ 
      echo '<option value="'.$row['people_id'].'">'; 
     } 
     echo $row['people_fullname'].'<option>'; 
    } 
} 
?> 
+3

Du durch jede Zeile Looping mit 'foreach'! Ja, das gibt alles so oft aus, wie Felder in der Zeile sind. – deceze

+1

Es scheint merkwürdig, dass dies nicht das Gleiche getan hätte, bevor Sie es aktualisiert haben, stattdessen mysqli zu verwenden. –

+0

1.remove 'foreach' nur (nicht wenn-sonst drinnen) .2' echo $ row ['people_fullname']. '

Antwort

2

1.Remove foreach()

2.Last <option></option> sein müssen.

Sie wie folgt: -

<?php 
$query = 'SELECT people_id, people_fullname FROM people WHERE people_isactor = 1 ORDER BY people_fullname;'; 
$result = mysqli_query($con,$query) or die(mysqli_error($con)); 

//populate the select options with the result 
while($row = mysqli_fetch_assoc($result)){ 

    if($row['people_id'] == $movie_leadactor){ 
     echo '<option value="'.$row['people_id'].'"selected="selected">'.$row['people_fullname'].'</option>'; 
    }else{ 
     echo '<option value="'.$row['people_id'].'">'.$row['people_fullname'].'</option>'; 
    } 
} 
?> 
+0

ja das hat funktioniert, danke! :) –

+0

@ArunKumar froh, Ihnen zu helfen. –