besonderes Konzept. ',
'uid' => 1,
'Spitzname' => 'Kartoffelmann',
'site' =>",
'sitetype' => 1,
'starttime' => 1191074174,
'lasttime' => 1191629784,
'totleviews' => 14,
'totleblogs' => 3
);
Da das Programm magic_quotes_gpc automatisch ermittelt und alle POST- und GET-Daten automatisch maskiert (unter Addslashes), wird $message['sitename'] im obigen Array zu einem nativen'Tribe, bevor es in der Datenbank gespeichert wird In der MySQL-Datenbank ist der gespeicherte Inhalt immer noch der „Turen-Stamm“ (fragen Sie mich nicht: „Wie betrete ich die MySQL-Datenbank?“ Dies ist die Escape-Funktion von MySQL, und die meisten Datenbanken sind auch auf zum Escape angewiesen ), gibt es derzeit kein Problem.
Das Problem entsteht, wenn dieses Feld aus der Datenbank abgerufen und dann unserialisiert wird. Da der Wert des nativen Stamms nicht aus der Datenbank maskiert wird, schlägt die Deserialisierung fehl.
Ich habe an mehrere Lösungen gedacht:
Erstens existiert das Array nicht mehr in einem Feld und jeder Schlüssel existiert unabhängig in einem Feld. Dies ist ausgeschlossen, da das System bereits läuft und es mühsam ist, es zu ändern.
Zweitens fügt es dem serialisierten Array einen Schrägstrich hinzu, bevor die Daten in MySQL gespeichert werden. Zu diesem Zeitpunkt sind die in MySQL gespeicherten Daten der Turen-Stamm, aber die Datenbank stellt fest, dass die Daten nach der Deserialisierung immer noch der Turen-Stamm sind, also muss dies geschehen Dieses Array wird nacheinander erneut verarbeitet.
Drittens: Verzichten Sie auf die Benutzerfreundlichkeit :). Wenn dies der Fall ist, wird es automatisch ersetzt.