OVH Community, votre nouvel espace communautaire.

MYSQL==> MYSQLI, Au Secours !!


teopath
21/03/2016, 00h37
Désolé de ne pas avoir répondu plus tôt mais je dois produire ma 2035 pour dans pas longtemps et je ne suis pas à jour dans ma compta

Donc j'ai bien noté que si je passe en "développement" il n'apparaitrait plus de DEPRECATED, mais c'est une solution qui me déplait, je préfère juger par moi même de l'effet de de mes modifications

Encore merci pour votre aide

Gaston_Phone
17/03/2016, 11h44
Ou simplement par FTP

vcasse
17/03/2016, 11h18
Bonjour teopath,

Je pense surtout que le site en production ne produit pas de DEPRECATED pour les versions < 5.4 de PHP. (Ce qui est plutôt une bonne nouvelle pour le site )

Pour changer en "production", deux techniques :
- Via l'espace client : https://www.ovh.com/fr/hosting/guide..._espace_client
- En ligne de commande : https://www.ovh.com/fr/g1207.configu...ebergement-web

Cordialement,
Vincent

Nowwhat
17/03/2016, 11h14
Citation Envoyé par teopath
....
Comment il faut faire pour être "en production" ?
Citation Envoyé par vcasse
Essaie de passer cette ligne avec la valeur "production" en php 5.6. Possible que les deprecated disparaissent.
T'as vu le doc concernant .ovhconfig ?

Gaston_Phone
17/03/2016, 11h14
Si j'ai bien compris :

  • Jusqu'à PHP 5.6 les fonctions "Deprecated" pouvaient n'avoir seulement qu'un message d'avertissement, mais fonctionnaient quand même.
  • A partir de php 5.7 les fonctions "Deprecated" de Mysql sont carrément interdite et ne sont plys exécutées.

teopath
17/03/2016, 11h03
Il y a peut être quelque chose qui m'échappe alors, mes sites sont en ligne depuis une dizaine d'année, mais les "Deprecated" étaient visibles.

Comment il faut faire pour être "en production" ?

vcasse
16/03/2016, 16h08
Bonjour teopath,

J'ai été un peu rapide dans ma réponse je pense

Dans le fichier .ovhconfig, il y a une régle environment. Celle ci peut avoir deux valeurs : development ou production.
En mode development, la configuration de PHP est définie pour afficher les logs type warning ou deprecated (display_errors = ON).

Essaie de passer cette ligne avec la valeur "production" en php 5.6. Possible que les deprecated disparaissent.

Cordialement,
Vincent

nitrix-ud
16/03/2016, 16h04
normalement toutes les erreurs sont cachées si tu es en production

teopath
16/03/2016, 14h40
Citation Envoyé par vcasse
Bonjour à tous,

Les deprecated sont pas cachés si tu met le .ovhconfig en production ?

Cordialement,
Vincent
Ben .ovhconfig est déjà en production, sinon je n'aurais pas pu passer en 5.6, non ?

vcasse
16/03/2016, 13h28
Bonjour à tous,

Les deprecated sont pas cachés si tu met le .ovhconfig en production ?

Cordialement,
Vincent

nitrix-ud
16/03/2016, 13h00
Cependant, j'observe que la tendance actuelle est à la programmation par objets.
tu as raison, pour les nouveaux projets c'est ce qu'il faut faire.

Aussi je me dis que mysqli disparaitra aussi un jour ou l'autre.
tu as sans doute raison, mais pas à court terme. Alors pour des vieux sites qui disparaitront avant que mysqli ne disparaisse, j'étais bien content de trouver cette petite classe

Gaston_Phone
16/03/2016, 11h43
Citation Envoyé par nitrix-ud
C'est du bricolage mais je ne suis pas d'accord sur la suite : court terme
C'est en fait mon opignon personnelle.

Cependant, j'observe que la tendance actuelle est à la programmation par objets.
Aussi je me dis que mysqli disparaitra aussi un jour ou l'autre.

nitrix-ud
16/03/2016, 07h55
C'est vrai, mais cela reste du bricolage à court terme.
C'est du bricolage mais je ne suis pas d'accord sur la suite : court terme

Gaston_Phone
16/03/2016, 07h40
Citation Envoyé par nitrix-ud
Perso, sur quelques vieux sites, j'ai utilisé la classe :
http://www.phpclasses.org/package/91...extension.html
du coup pas besoin de réécrire quoique ce soit et tu peux passer en php7 et ça marche très bien.
C'est vrai, mais cela reste du bricolage à court terme.

nitrix-ud
16/03/2016, 07h33
Perso, sur quelques vieux sites, j'ai utilisé la classe :
http://www.phpclasses.org/package/91...extension.html
du coup pas besoin de réécrire quoique ce soit et tu peux passer en php7 et ça marche très bien.

Après évidemment, le mieux est de passer en mysqli "pure" ou peut-être encore mieux comme le dit Gaston en PDO.

Gaston_Phone
16/03/2016, 07h25
Le plus simple est de passer en mode PDO --> OVH - Test de Base de Données via un script en langage PDO

Je sais, cela peut être un gros travail que j'ai du personnellement faire il y a 6 mois sur un de mes sites.

teopath
16/03/2016, 01h37
Bonsoir à tous

Lors de l'évolution vers PHP 5.4, j'avais tenté de configurer en PHP 5.6 et comme tout fonctionnait ...

J'avais bien vu que MYSQL était obsolète, mais comme çà fonctionnait, je me suis dit ; "on verra plus tard"

Plus tard c'est maintenant, brusquement, vers minuit, toutes mes pages, ont commencé à m’abreuver de DEPRECATED tout azimut .

J'ai sauvé les meubles en repassant tous mes sites en PHP 5.4

J'ai fait quelques essais, mais çà continu à m'envoyer des messages d'erreur.

Quelqu'un pourrait il me donner l'adresse d'un tuto clair, accessible à un néophyte comme moi (je ne suis pas informaticien), afin que je puisse réécrire toutes mes requêtes ?

D'avance merci