Créer et etablir une page de maintenance pour x heures

Soyez le premier à donner votre avis sur cette source.

Vue 6 197 fois - Téléchargée 540 fois

Description

Bonjour, j'ai récemment cherché a créer un "système" pour pouvoir mettre mon site en maintenance SANS .htaccess (car je m'en sert pour les erreur )
J'ai donc "Bricolé " un script php/mysql qui MARCHE ! voila le code php :
/!\ ne copiez pas juste ce code ! car dans le fichier rar si dessous il y a le code SQL dans : SQL.txt !

Source / Exemple :


<?
require("conf.php3");

$db_link = @mysql_connect($sql_serveur,$sql_user,$sql_passwd);
if(!$db_link) {echo "Connexion impossible à la base de données <b>$sql_bdd</b> sur le serveur <b>$sql_server</b><br>Vérifiez les paramètres du fichier conf.php3"; exit;}

$requete=mysql_db_query($sql_bdd,"select maintenance from maintenance where reco=\"1\"",$db_link);
$requete=mysql_db_query($sql_bdd,"select * from maintenance ",$db_link);
$maintenance=mysql_result($requete,0,"maintenance");
$raison=mysql_result($requete,0,"raison");
$duree=mysql_result($requete,0,"duree");
if ( $maintenance !=0 )die ("Le site (SITE) est en maintenance ! Veuillez repasser dans quelques moments (durée de la Maintenance : $duree heures! Raison de la maintenance :<br>$raison");

mysql_close($db_link);
?>

Conclusion :


Voila bon appres il y a des restrictions a établir et de l'èstétisme mais pour un code crée en 20 minutes et très facile a mettre ca vaut le coup pour dépanner ! Il manque aussi une interface d'administration avec "Activer la maintenance et désactiver .." je mettrais ca plu tard :)

Codes Sources

A voir également

Ajouter un commentaire Commentaires
Messages postés
134
Date d'inscription
mardi 22 avril 2003
Statut
Membre
Dernière intervention
23 décembre 2009

Pour répondre précisément sur la source :
- LIGNE6 : Il ne faut pas afficher un message d'erreur qui demande à l'utilisateur (l'internaute lambda) de modifier le fichier de conf... En général, il a tendance à vouloir le faire. Il est préférable de signifier un problème ("de connexion à la base de donnée" à la limite) et de préciser que l'administrateur va agir au plus vite pour rétablir le service. (Avec éventuellement l'email de l'administrateur s'il n'y a pas d'alerte automatisée).
- LIGNE13 : plutôt que la durée, c'est l'heure de fin qui est utile. (voir du coté de timestamp en php plutôt qu'un champ DATE en mysql)

Concernant l'usage :
- Le mieux reste de nommer un fichier maintenance_inactive.php et de le renommer en maintenance_active.php lorsqu'il est actif. Ensuite en entête, on teste l'existence du fichier. S'il existe, on fait un include/exit. Sinon, on ne fait rien.
- Ensuite une petite interface d'admin qui renomme le fichier de maintenance et qui mets à jour un fichier txt ou xml contenant les informations sur la maintenance.
- Eventuellement, mais là ca devient complexe, il faudrait penser à un script qui enregistre les emails des utilisateurs voulant être avertis de la fin de la maintenance et un script pour la desactivation de la maintenance puisse se faire via un script automatique (exemple : le site est en maintenance pour sauvegarde, à la fin de la sauvegarde, on réactive le site).
Messages postés
33
Date d'inscription
mercredi 1 mars 2006
Statut
Membre
Dernière intervention
24 février 2008

A propos de la version de php.
Il serait mieux de te mettre toute de suite à la dernière version de php, car tu n'as en principe pas de contrainte d'existant (migration, refonte de site,etc...), de plus si tu souhaite travailler dans le secteur informatique dans au minimum 4 ans (prends ton temps néanmoins car BAC+2 il un strict minimum aujourd'hui, et dans 4 ans, ou plus... ?) on sera surement dans une version supérieur.
Là tu as déjà 2 versions dans la vue!
Messages postés
3
Date d'inscription
dimanche 6 septembre 2009
Statut
Membre
Dernière intervention
5 octobre 2013

@aKheNathOn= Merci pour l'encouragement et les idées,
Je recommence la V1 avec du php4 ~ Php5 ;)

@Baddante &kohntark = Je comprend !! J'ai crée ce script en 20 minutes et je l'ai posté directement sur Cs (1 ere source sur un Forum et donc je l'ai fait avec enthousiasme,merci pour vos remarque qui me permettrons (peut être ;) ) d'avancer !
Messages postés
3706
Date d'inscription
lundi 5 juillet 2004
Statut
Membre
Dernière intervention
27 avril 2012
30
Salut,

Ce n'est vraiment pas mon habitude que de descendre une source et je ne commencerai pas maintenant.
Cela étant voir ce genre de code noté d'un 8 et d'un 5 m'ennuie, et je pense au grand débutant lambda qui s'en inspirera en recopiant toutes les erreurs qu'il comporte, les mauvaises pratiques, etc ...

Comme aKheNathOn je trouve que l'idée est bonne, mais ça s'arrête là.
Je rejoins totalement Baddante dans son "vite fait" et j'irai même plus loin : je pense que c'est un code "balancé à l'arrache"

Pour ce qui est des améliorations l'essentiel a déjà été dit.

Je mets une note pour remettre un peu à sa place ta source (pour les raisons évoquées plus haut)
En tous cas persévère et fais vivre cette bonne idée. A ton âge c'est plutôt un bon début (je ne savais même pas démarrer un PC à 14 ans !)

Pour ce qui est du niveau "débutant" aurait été plus approprié que celui d'initié.

Cordialement,

Kohntark-
Messages postés
24
Date d'inscription
dimanche 9 décembre 2007
Statut
Membre
Dernière intervention
7 avril 2013

Le zip est corrompu :( je ne sais pas tester cette source.
Afficher les 7 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.