OVH Community, votre nouvel espace communautaire.

MYSQL==> MYSQLI, Au Secours !!


teopath
21/03/2016, 01h37
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, 12h44
Ou simplement par FTP

vcasse
17/03/2016, 12h18
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, 12h14
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, 12h14
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, 12h03
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, 17h08
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, 17h04
normalement toutes les erreurs sont cachées si tu es en production

teopath
16/03/2016, 15h40
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, 14h28
Bonjour à tous,

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

Cordialement,
Vincent

nitrix-ud
16/03/2016, 14h00
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, 12h43
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, 08h55
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, 08h40
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, 08h33
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, 08h25
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, 02h37
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