Veilig php gastenboek anno 2021

Status
Niet open voor verdere reacties.

JacquesL

Gebruiker
Lid geworden
16 jan 2018
Berichten
78
Goedemiddag,

Recentelijk ben ik verhuist met mijn VPS server naar een nieuwe versie. Nu heb ik daar een website op draaien die een verouderde versie van PHP gebruikt (het gastenboek). Deze werkt nu niet meer met de nieuwe VPS waar PHP versie 7.4.16 op is geïnstalleerd. Op zich begrijpelijk maar weet iemand een gastenboek in PHP die redelijk eenvoudig is te configureren en die op de huidige PHP-versie functioneert?

Ik verwacht geen compleet script hiervoor (mag natuurlijk wel) maar een betrouwbare link waar een script eventueel te downloaden is (hoeft ook niet gratis te zijn).Ik ben namelijk niet zo PHP mannetje :).

Groetjes
Jacques
 
Je kan ook de huidige code delen, zodat we een blik kunnen werpen op de veiligheid en werking.
En wat werkt er niet, wat melden de errors?
 
Beste PHP4U,

Ik heb het bestand ingepakt. Fijn dat je even wilt kijken. Hoeft niet hoor, een goed alternatief is ook goed.

Groet
Jacques
 

Bijlagen

  • phpgb.zip
    148,6 KB · Weergaven: 38
Ik zal vanavond even kijken.

Kan je wel vertellen welke error je te zien krijgt? Of eerst er wel gebeurt? En als het een leeg scherm is... Check je error_log.
 
Laatst bewerkt:
Hoi PHP4U,

Als je op de website het gastenboek opvraagt krijg je inderdaad een lege pagina te zien. In de logfile op de server krijg je de volgende errormelding te zien:

AH01071: Got error 'PHP message: PHP Fatal error: Uncaught Error: Call to undefined function set_magic_quotes_runtime() in /var/www/vhosts/meezingkoor-maassluis.nl/httpdocs/phpgb/index.php:14\nStack trace:\n#0 {main}\n thrown in /var/www/vhosts/meezingkoor-maassluis.nl/httpdocs/phpgb/index.php on line 14', referer: http://meezingkoor-maassluis.nl/gastenboek.htm

Groetjes
Jacques
 
Die functie kan je er uithalen.
Die zit niet meer in PHP.
 
Hallo PHP4U

Ik heb, voor zover mijn php kennis dit toelaat, naar mijn idee overal deze functie verwijderd. Maar helaas nog steeds een blanco scherm.
Er verschijnt nu de volgende foutmelding in de errorlog:

AH01071: Got error 'PHP message: PHP Fatal error: Uncaught Error: Call to undefined function mysql_connect() in /var/www/vhosts/meezingkoor-maassluis.nl/httpdocs/phpgb/functions.php:29\nStack trace:\n#0 /var/www/vhosts/meezingkoor-maassluis.nl/httpdocs/phpgb/index.php(36): db_connection->set_db_connection('')\n#1 {main}\n thrown in /var/www/vhosts/meezingkoor-maassluis.nl/httpdocs/phpgb/functions.php on line 29', referer: http://meezingkoor-maassluis.nl/gastenboek.htm
 
Laatst bewerkt:
Dan zul je je mysql-functies moeten ombouwen naar MySQLi....
Ik zal vanavond even kijken.

Check ook je PM!
 
Laatst bewerkt:
Hallo PHP4U

Ik heb, voor zover mijn php kennis dit toelaat, naar mijn idee overal deze functie verwijderd. Maar helaas nog steeds een blanco scherm.
Er verschijnt nu de volgende foutmelding in de errorlog:

AH01071: Got error 'PHP message: PHP Fatal error: Uncaught Error: Call to undefined function mysql_connect() in /var/www/vhosts/meezingkoor-maassluis.nl/httpdocs/phpgb/functions.php:29\nStack trace:\n#0 /var/www/vhosts/meezingkoor-maassluis.nl/httpdocs/phpgb/index.php(36): db_connection->set_db_connection('', '', '', '')\n#1 {main}\n thrown in /var/www/vhosts/meezingkoor-maassluis.nl/httpdocs/phpgb/functions.php on line 29', referer: http://meezingkoor-maassluis.nl/gastenboek.htm
 
Lees ook eens deze pagina, en met name de voorbeelden:
http://phphulp.jorendewit.nl/view/26/2/

Je moet dus onder andere deze functies gebruiken: mysqli_connect(...), mysqli_query(...), mysqli_error(..) en mysqli_fetch_assoc(..) gebruiken.

Voornamelijk een 'i' erbij, maar let op de opbouw van de functie, want soms moet er een extra parameter bij.
Zie ook: http://www.php.net/mysqli_query etc...
 
Laatst bewerkt:
Goedemorgen PHP4U,

Ik zei al eerder in dit ticket dat ik totaal geen ervaring heb met PHP. Maar zoals ik het nu lees moet ik in alle PHP bestanden een i toevoegen aan MySQL die ik tegen kom in de bestanden. Of is dat te simpel geredeneerd?

Groetjes
Jacques
 
Daar komt het voor een groot deel op neer, maar in sommige gevallen moet je wat meer doen.
De link maakt vast veel duidelijk. :)
 
PHPGB is opensource dus opensource regels
https://sourceforge.net/p/phpgb/code/
wat kan je er vinden de laaste code en dan zie je 2004 staan dus veroudert.

als je de zip bekijkt zie je docs updates .
wat doe je je maakt dus zelf zo'n txt aan en plaatst alles wat je hebt aangepast erin om nadien elke afwijking te kennen.
bekijk ook dit even.

https://www.cvedetails.com/vendor/1627/Phpgb.html

en verder zou ik de overweging maken een andere te zoeken downloaden en installeren

Ik wil je wel vertellen dat de huidige relatief mooi is geprogrammeert leest vlot .
8
lees verder ook ... als je er toch aan werkt, laat het werken voor php8 ook.(LET OP DE LAASTE XAMPP STAAT AL IN PHP8 NIEUWE code werkt enkel in php 8 is niet in php7 beschikbaar)
best test je kleine delen code op de server voor zekerheid.
https://www.php.net/releases/8.0/en.php

htmlspecialchars($string, ENT_COMPAT | ENT_HTML401, 'UTF-8', false);
PHP 8
htmlspecialchars($string, double_encode: false);
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan