Bonjour à tous,
L'outil d'administration de mon domaine colonelreyel me permettait d'effectuer des sauvegardes de ma base de données simplement. Depuis un temps indéterminé, une fonction php obsolète m'empêche de réaliser cette action.
J'ai bien entendu réalisé celle-ci avec succès depuis https://phpmyadmin.ovh.net, mais j'aimerais automatiser cette action par exemple selon un cycle hebdomadaire sur un support externe.
J'ai beau chercher, dans l'ancien forum ou celui-ci je ne trouve pas de mode opératoire et pourtant c'est un gage de qualité vis-à-vis de mes lecteurs.
Quelqu'un pourrait-il m'aider pour le script, sachant que je ne suis plus développeur ?
Au plaisir de lire vos propositions et je vous remercie d'avance pour votre aide
Stockage et Sauvegardes - Sauvegarde automatique base de donnée
Related questions
- Nextcloud sur ovh
26145
19.07.2017 18:30
- Hubic - Comment récupérer ses fichiers avec une méthode qui fonctionne ?
25631
29.05.2018 17:47
- Help object storage avec api s3
22029
14.11.2018 17:37
- Client hubic Linux encore supporté ?
20720
10.07.2017 17:17
- Sauvegardes Public Cloud Archive et duplicity/deja-dup
18637
04.08.2017 18:45
- Recuperer ses données sur HUBIC
18123
08.02.2017 13:43
- Hubic connexion impossible a mon compte?
15589
20.12.2017 08:23
- [Résolu] Comment s'authentifier sur Cloud Archive ?
14676
30.10.2019 17:45
- Comment se connecter à HUBIC avec Cyberduck
14495
14.08.2018 17:12
Bonjour,
Le site est basé sur quoi ? Quel CMS ?
Quel est le message d'erreur lors de la tentative de backup de ma base de données ?
Bonjour Buddy,
Le CMS est Arfooo et j'ai un soucis avec la fonction mysql_real_escape_string dont j'ai précisé ce matin un maximum d'informations https://forum.alsacreations.com/topic-20-80918-1-CMS-Arfooo-mysqlrealescapestring-deprecated.html ici.
Mais au delà de corriger le code pour l'état de l'art, ce que je souhaiterais avant tout c'est d'automatiser la sauvegarde.
Une piste --> https://www.wordetweb.com/word-et-web/OVH-Sauvegarder-Restaurer-une-base-de-donnees-via-un-script-FR.htm OVH - Sauvegardes et Restaurations de Bases de Données via un script
Arfooo est basé sur PHP5 et il ne semble pas y avoir eu de mise à jour. La fonction mysql_real_escape_string est obsolète et a été supprimée à partir de PHP7.
Donc soit tu passes en PHP5.6 au niveau de .ovhconfig, soit tu choisis une autre option comme le suggère @Gaston_Phone
Sinon si tu peux modifier le code source c'est mysqli_real_escape_string qu'il faut utiliser
Merci d'avoir pris le temps de lire mon message et pour vos suggestions.
@Gaston_Phone :
@Daniel60 : modifier 2 ou 3 lignes pour utiliser la fonction mysqli_real_escape_string doit être relativement simple, mais je ne comprends pas l'exhaustivité de la syntaxe.
Est-ce qu'un membre pourrait m'aider à décrypter ou intégrer la fonction
$res = $this->db->sqlQuery("SELECT * FROM $table");
$linesCount = $this->db->sqlNumRows($res);
if ($linesCount) {
$backupSqlCode .= "INSERT INTO $table VALUES";
while ($dataRow = $this->db->sqlFetchArray($res)) {
$linesCount--;
$dataRow = array_map("mysql_real_escape_string", $dataRow);
$dataLine = "('" . implode("', '", $dataRow) . "')";
if ($linesCount) {
$dataLine .= ",";
}
$backupSqlCode .= $dataLine;
}
$backupSqlCode .= ";";
}
Merci d'avance
Bonjour,
tu as la syntaxe ici : http://php.net/manual/fr/mysqli.real-escape-string.php (tout en bas il y a des exemple)
ceci devrait marcher
$dataRow = $mysqli->real_escape_string($dataRow );
J'ai essayé la syntaxe suggérée et le message d'erreur suivant s'affiche
(8) Undefined variable: mysqli DatabaseModel.php line 71 9-4-17 8:43
FrontController->dispatch() # line 18, file: /home/parfumden/colonelreyel/index.php
call_user_func_array(Array[2], Array[0]) # line 220, file: /home/parfumden/colonelreyel/core/FrontController.php
Admin_SystemController->saveAction() # line 0, file: unknown
DatabaseModel->createBackup("gz", "store|download") # line 71, file: /home/parfumden/colonelreyel/admin/controllers/SystemController.php
Le problème c'est que l'ensemble du code pour utiliser mysql et pas mysqli ..
Il faudrait revoir tout le code source ...
Et le message d'erreur seul, sans savoir le contenu des fichiers auquel il réfère s'est compliqué et impossible à débugger.
Bref, à mon avis, soit l'éditeur de ton CMS le met encore à jour et d'ici quelques mois çà sera bon.
Soit le CMS est abandonné et tu ferais mieux de changer..
@MarcelB L'emploi des fonctions mysqli_ ou mysqli:: présuppose que la base de donnée à été ouverte de cette façon :
$mysqli = new mysqli("host", "my_user", "my_password", "bd");
Tu dois donc aussi modifier ce passage ailleurs dans le script.
Merci @Daniel60 pour le complément d'information, cela suppose donc plus de modification que je ne le pensais.
En effet. Aussi en attendant une mise à jour éventuelle d'Arfooo, tu pourrais temporairement downgrader ton PHP comme indiqué plus haut par le biais d'.ovhconfig https://docs.ovh.com/fr/fr/web/hosting/configurer-le-php-sur-son-hebergement-web-mutu-2014/
Effectivement je pourrais dowgrader la version PHP, mais c'est reculé pour mieux sauter, la communauté Arfooo n'est plus très active et le socle avance encore grâce à des échanges entre quelques passionnés. Il faut donc avancer