Hallo,
ich habe folgende Funktion geschrieben, welche folgendes bezwecken soll: Ein Nutzer klickt 'zu Favoriten hinzufügen' -> Die ID des Beitrages wird übergeben (für die Zuordnung in MySql) und der Benutzer wird in einem Array in MySql geschrieben. Der Teil funktioniert auch soweit... Komischerweise speichert er nur insgesamt 2 Benutzer in dem besagten Array in der Datenbank und überschreibt nach dem 2 Eintrag den vorherigen... Des Weiteren ist es nicht möglich den Beitrag "zu den Favoriten" hinzufügen wenn die $username = $username ist nur != $username.
Hoffe konnte das Problem "einigermaßen" beschreiben und hoffe auf Rückmeldung, denke, dass ich einen denkfehler eingebaut habe... bei dem in_array
ich habe folgende Funktion geschrieben, welche folgendes bezwecken soll: Ein Nutzer klickt 'zu Favoriten hinzufügen' -> Die ID des Beitrages wird übergeben (für die Zuordnung in MySql) und der Benutzer wird in einem Array in MySql geschrieben. Der Teil funktioniert auch soweit... Komischerweise speichert er nur insgesamt 2 Benutzer in dem besagten Array in der Datenbank und überschreibt nach dem 2 Eintrag den vorherigen... Des Weiteren ist es nicht möglich den Beitrag "zu den Favoriten" hinzufügen wenn die $username = $username ist nur != $username.
Hoffe konnte das Problem "einigermaßen" beschreiben und hoffe auf Rückmeldung, denke, dass ich einen denkfehler eingebaut habe... bei dem in_array
PHP-Code:
public static function favorite($id) {
global $username;
$sql = mysql_query("select * from post where id = '$id'");
$row = mysql_fetch_object($sql);
$output = unserialize($row->favorite);
if($output > 0) {
foreach($output as $value) {
if(in_array($username, array($value))) {
/* Do nothing */
}
else {
$array = array($value);
$array[] = $username;
$update = serialize($array);
mysql_query("update post set favorite = '$update' where id = '$id'");
}
}
}
else {
$array1 = array();
$array1[] = $username;
$update1 = serialize($array1);
mysql_query("update post set favorite = '$update1' where id = '$id'");
}
}
Kommentar