Denne artikel er en spejling af maskinoversættelse, klik venligst her for at springe til den oprindelige artikel.

Udsigt: 14308|Svar: 0

[Hjemmeside O&M] Rettede en fejl i RSS-output efter Discuz X3.2-opgraderingen

[Kopier link]
Opslået på 27/04/2016 10.48.13 | | |
Jeg ved ikke, om det er en programfejl
PHP error_log fejllogsinformationsfil er meget G.
Notepad åbner sådan her

[06-nov-2015 12:40:26 osv./GMT-8] PHP forældet: mysql_escape_string(): Denne funktion er forældet; Brug i stedet mysql_real_escape_string() i D:\127.0.0.1\source\class\discuz\discuz_database.php på linje 177
[06-nov-2015 12:40:26 osv./GMT-8] PHP forældet: mysql_escape_string(): Denne funktion er forældet; Brug i stedet mysql_real_escape_string() i D:\127.0.0.1\source\class\discuz\discuz_database.php på linje 177
[06-nov-2015 12:40:26 osv./GMT-8] PHP forældet: mysql_escape_string(): Denne funktion er forældet; Brug i stedet mysql_real_escape_string() i D:\127.0.0.1\source\class\discuz\discuz_database.php på linje 177
[06-nov-2015 12:40:26 osv./GMT-8] PHP forældet: mysql_escape_string(): Denne funktion er forældet; Brug i stedet mysql_real_escape_string() i D:\127.0.0.1\source\class\discuz\discuz_database.php på linje 177
[06-nov-2015 12:40:26 osv./GMT-8] PHP forældet: mysql_escape_string(): Denne funktion er forældet; Brug i stedet mysql_real_escape_string() i D:\127.0.0.1\source\class\discuz\discuz_database.php på linje 177
[06-nov-2015 12:40:26 osv./GMT-8] PHP forældet: mysql_escape_string(): Denne funktion er forældet; Brug i stedet mysql_real_escape_string() i D:\source\class\discuz\discuz_database.php på linje 177
[06-nov-2015 12:40:26 osv./GMT-8] PHP forældet: mysql_escape_string(): Denne funktion er forældet; Brug i stedet mysql_real_escape_string() i D:\127.0.0.1\source\class\discuz\discuz_database.php på linje 177
[06-nov-2015 12:40:26 osv./GMT-8] PHP forældet: mysql_escape_string(): Denne funktion er forældet; Brug i stedet mysql_real_escape_string() i D:\127.0.0.1\source\class\discuz\discuz_database.php på linje 177
[06-nov-2015 12:40:26 osv./GMT-8] PHP forældet: mysql_escape_string(): Denne funktion er forældet; Brug i stedet mysql_real_escape_string() i D:\source\class\discuz\discuz_database.php på linje 177
[06-nov-2015 12:40:26 osv./GMT-8] PHP forældet: mysql_escape_string(): Denne funktion er forældet; Brug i stedet mysql_real_escape_string() i D:\127.0.0.1\source\class\discuz\discuz_database.php på linje 177
[06-nov-2015 12:40:26 osv./GMT-8] PHP forældet: mysql_escape_string(): Denne funktion er forældet; Brug i stedet mysql_real_escape_string() i D:\127.0.0.1\source\class\discuz\discuz_database.php på linje 177
[06-nov-2015 12:40:26 osv./GMT-8] PHP forældet: mysql_escape_string(): Denne funktion er forældet; Brug i stedet mysql_real_escape_string() i D:\127.0.0.1\source\class\discuz\discuz_database.php på linje 177
[06-nov-2015 12:40:26 osv./GMT-8] PHP forældet: mysql_escape_string(): Denne funktion er forældet; Brug i stedet mysql_real_escape_string() i D:\source\class\discuz\discuz_database.php på linje 177
[06-nov-2015 12:40:26 osv./GMT-8] PHP forældet: mysql_escape_string(): Denne funktion er forældet; Brug i stedet mysql_real_escape_string() i D:\127.0.0.1\source\class\discuz\discuz_database.php på linje 177
[06-nov-2015 12:40:26 osv./GMT-8] PHP forældet: mysql_escape_string(): Denne funktion er forældet; Brug i stedet mysql_real_escape_string() i D:\127.0.0.1\source\class\discuz\discuz_database.php på linje 177
[06-nov-2015 12:40:26 osv./GMT-8] PHP forældet: mysql_escape_string(): Denne funktion er forældet; Brug i stedet mysql_real_escape_string() i D:\127.0.0.1\source\class\discuz\discuz_database.php på linje 177
[06-nov-2015 12:40:26 osv./GMT-8] PHP forældet: mysql_escape_string(): Denne funktion er forældet; Brug i stedet mysql_real_escape_string() i D:\127.0.0.1\source\class\discuz\discuz_database.php på linje 177
[06-nov-2015 12:40:26 osv./GMT-8] PHP forældet: mysql_escape_string(): Denne funktion er forældet; Brug i stedet mysql_real_escape_string() i D:\127.0.0.1\source\class\discuz\discuz_database.php på linje 177


Discuz X3.2 har en unormal RSS-udgang efter opgradering til 20141225 version. Fejlkoden er som følger:

XML-parsingsfejl: Syntaksfejl
Beliggenhed: http://www.xxx.com/forum.php?mod=rss
Række 2, kolonne 1: Forældet: mysql_escape_string(): Denne funktion er forældet; Brug i stedet mysql_real_escape_string() i /xxx/xxx/xxx/source/class/discuz/discuz_database.php på linje 177

Årsagen til fejlen er, at en PHP-funktion, der er blevet forældet, bruges. Det er tydeligt, at Discuz' patch ikke blev testet efter udviklingen var færdig, og selv den officielle hjemmeside tændte ikke for RSS-outputtet, og jeg tvivler endda på, at udvikleren har et rigtigt niveau.


Denne fejlkode bliver kun bedt om i Firefox, og både IE og Chrome rapporterer en fejl uden en fejlkode.

Fix-metoden er også meget simpel, bare udskift mysql_escape_string()-funktionen på linje 177 discuz_database.php med mysql_real_escape_string().






Tidligere:Kommer jquery ajax med cookies sessionsanmodninger?
Næste:Efter at have kørt X3.2, viser PHP-logen: PHP Strict Standards
Ansvarsfraskrivelse:
Al software, programmeringsmaterialer eller artikler udgivet af Code Farmer Network er kun til lærings- og forskningsformål; Ovenstående indhold må ikke bruges til kommercielle eller ulovlige formål, ellers skal brugerne bære alle konsekvenser. Oplysningerne på dette site kommer fra internettet, og ophavsretstvister har intet med dette site at gøre. Du skal slette ovenstående indhold fuldstændigt fra din computer inden for 24 timer efter download. Hvis du kan lide programmet, så understøt venligst ægte software, køb registrering og få bedre ægte tjenester. Hvis der er nogen overtrædelse, bedes du kontakte os via e-mail.

Mail To:help@itsvse.com