Problème d'exécution script SQL

Eléphanteau du PHP | 13 Messages

23 janv. 2016, 22:23

j' ai tenté de créer manuellement mes table et donc de charger manuellement ma base de donnée mais sa ne fonctionne pas puisque le scripte n' est prend pas en compte la base de donnée.

Tant que j' aurais pas su résoudre cela sa ne peut pas fonctionner comme il faut forcément.

J' ai lu que tu es incapable de télécharger cet outil (phpannonces), le scripte complet je l' ai donc sa je sais te le faire parvenir.

Effectivement ils ont pas renouvelé leur accès.

Pour ma part, il me semble que il n' y à que dans le répertoire "setup" et ses 4 sous répertoires qu' il faut apporté les modifications nécessaire au bon fonctionnement,

Mais pas évident, sa fait maintenant une semaine à approximativement que je travaille là dessus car pendant ce temps mon site est forcément inaccessible de par ce fait.

Cela dit, je te remercie pour l' aide et les conseils que tu m' à déjà donné .

Mammouth du PHP | 881 Messages

23 janv. 2016, 22:38

Pas de souci,

fais seulement la recherche dans tes fichiers des mots « construc » et « mysql_connect » Ça devrait te mener au fichier qui établit la connexion à la base de données. Ensuite, il suffira de modifier ce fichier pour le mettre à jour.
Soyez artisans de paix

Eléphanteau du PHP | 13 Messages

23 janv. 2016, 22:59

cool merci je vais m' atteler à cela.

Eléphanteau du PHP | 13 Messages

25 janv. 2016, 16:27

voilà donc j' ai passé la nuit jusqu' à maintenant à encore bosser dessus, j' ai analysé l' entièreté du script et modifier mysql par mysqli à tout les niveau, j' ai aussi téléchargé un converter mysql --->>mysqli , maintenant sa me dit que le script est installé mais sa ne charge pas la base de données .

Je commence à me demandé si je vais y arrivé un jour mdr !

Mammouth du PHP | 2703 Messages

25 janv. 2016, 16:31

trouve les requêtes sql qui sont exécutées dans le script d’installation et exécutes les manuellement dans phpmyadmin.

Mammouth du PHP | 881 Messages

25 janv. 2016, 16:58

Bonjour Laurent,

tandis que tu as trouvé ton code, tu peux nous en copier la partie incriminée ( mysql_query ou mysql_connect sont les commandes qui nous intéressent ici ) ,
Soyez artisans de paix

Eléphanteau du PHP | 13 Messages

25 janv. 2016, 18:05

Oui donc mysql_connect se trouve dans config.inc.php dont voici la partie :

Comme dans le script avant que j' ai modifier :

// Se connecter à la base de données
$cn = mysql_connect($db_host, $db_user, $db_pass) or die("Impossible de se connecter à la base de donnée MySql");
mysql_select_db($db_name) or die("Erreur d'accès base de donnée MySql");


Et je l' ai modifier comme ceci :


// Se connecter à la base de données
$db = mysqli_connect ($db_host,$db_user, $db_pass, $db_base);

Quand à mysql_query dans plusieurs autres dossiers dont le setup ou sa se présente comme ceci avant que je modifie:

<?php

@set_time_limit(0);
@ignore_user_abort(true);

require_once("../initvars.inc.php");
$path_escape = "../";
$in_admin = TRUE;
require_once("{$path_escape}config.inc.php");

$script_url = preg_replace('~setup$~','',$script_url);

function mysql_import_file($filename, &$errmsg)
{
$lines = file($filename);
if(!$lines){
$errmsg = "cannot open file $filename";
return false;
}
$scriptfile = false;
foreach($lines as $line){
$line = trim($line);
if(!ereg('^--', $line)){
$scriptfile.=" ".$line;
}
}
if(!$scriptfile)
{
$errmsg = "no text found in $filename";
return false;
}
$queries = explode(';', $scriptfile);
foreach($queries as $query){
$query = trim($query);
if($query == "") { continue; }

if(!mysql_query($query.';')){
$errmsg = "query ".$query." failed";
return false;
}
}
return true;
}
?>

Mammouth du PHP | 881 Messages

25 janv. 2016, 23:16

Bonjour Laurent,

d'abord, tu as changé la variable $cn pour $db. Je ne comprends pas pourquoi.

Disons que nous continuons ci-bas avec ton choix: $db
Aussi, quand on passe à mysqli, on passe toutes les commandes à mysqli, donc tes query devraient l'être aussi, tes fetch aussi.

Code : Tout sélectionner

if(!mysql_query($query.';')){ $errmsg = "query ".$query." failed"; return false; } } return true; } ?>
devrait devenir, conformément à http://php.net/manual/fr/mysqli.query.php

Code : Tout sélectionner

if(!mysqli_query($db, $query.';')){ $errmsg = "query ".$query." failed"; return false; } } return true; } ?>
Soyez artisans de paix

Eléphanteau du PHP | 13 Messages

26 janv. 2016, 00:26

Oups, désolé de répondre si tardivement, j' étais en train de souper.

Tu as raison, je comprends pas comment j' ai pas fais plus attention, il me semblais pourtant avoir passé toutes les commandes à mysqli y compris les query et les fetch.

Merci, je vais donc revérifier cela maintenant .