Probleme Mysql

Viper -  
 Viper -
Bonsoir,
J'ai un soucis que je 'narrive pas à résoudre depuis toute l'apres midi !
Une bétise surement !
Mais j'espere que vous pourrez m'éclairer.
le principe de ce code est de pouvoir poster un méssage dans une case (pour la navigation de mon site)
Pour cecis je passe dans la partie admin/navigation/edition.
Mais il me montre ce méssage d'érreur :

"Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /homepages/35/d228721493/htdocs/index.php on line 166"
Je crois que vous comprendrez mieux avec le code

premier code-> dans index.php:

<?php
$retour = mysql_query('SELECT * FROM navigation');
$donnees = mysql_fetch_array($retour);
echo stripslashes($donnees['value']);
?>

Deuxiemme code dans admin/navigation.php:

<head>
<title>Rédiger la pub</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>

<body>
<a href="navigation.php">Apercu des liens</a> - <a href="navigation.php?p=edition1">Edition des liens</a>
<?php
require_once('../includes/config.php');
mysql_connect($serveur_mysql, $user_mysql, $pass_mysql);
mysql_select_db($bdd_mysql);
echo "<h2>Lien</h2>";
if($_GET['p'] == "edition1")
{
$retour = mysql_query('SELECT * FROM navigation');
$donnees = mysql_fetch_array($retour);
echo "<form name=\"edition1\" action=\"navigation.php\" method=\"post\">";
echo "<textarea name=\"contenu\" rows=\"20\" cols=\"100%\">".stripslashes($donnees['value'])."</textarea><br />";
echo "<input type=\"submit\" value=\"Valider\" /></form>";
}
else
{
if($_POST['contenu'] != ""){
$contenu = addslashes($_POST['contenu']);
mysql_query("UPDATE navigation SET value='" . $contenu . "'");
}
$retour1 = mysql_query('SELECT * FROM navigation');
$donnees1 = mysql_fetch_array($retour1);
echo stripslashes($donnees1['value']);

Troisiemme code dans Bdd.sql

-- --------------------------------------------------------

--
-- Structure de la table `navigation`
--

CREATE TABLE `navigation` (
`value` text NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

--
-- Contenu de la table `navigation`
--

INSERT INTO `navigation` (`value`) VALUES
('TEST');

Merci de votre aide.

20 réponses

Viper
 
svp répondez je ne sais vraiment pas comment faire j'ai regardé avec les autres sujets mais vraiment rien ...
0
Alain_42 Messages postés 5413 Statut Membre 894
 
Bonsoir,

Essayes en traçant les erreurs mysql et il te manque la partie connexion à la base,( si tu as mis le code complet)

<?php
require_once('../includes/config.php');
mysql_connect($serveur_mysql, $user_mysql, $pass_mysql) or die ("Pb connexion:  ".mysql_error());
mysql_select_db($bdd_mysql) or die ("Pb selection base:  ".mysql_error()); 
$retour = mysql_query("SELECT * FROM navigation") or die ("Pb requette:  ".mysql_error());
$donnees = mysql_fetch_array($retour);
echo stripslashes($donnees['value']);
?>

0
Viper
 
Ok merci bcp je commancer à désesperer !
Je teste ça dessuite !
0
Viper
 
J'ai mis ça dans index.php
et ça donne ce code:

</table>
<?php } ?>
</div>
<table width="100%" cellpadding="0" cellspacing="0">
<td width="right" valign="top">
<div id="right">
<div id="navigation">
<br />
<?php
require_once('../includes/config.php');
mysql_connect($serveur_mysql, $user_mysql, $pass_mysql) or die ("Pb connexion: ".mysql_error());
mysql_select_db($bdd_mysql) or die ("Pb selection base: ".mysql_error());
$retour = mysql_query("SELECT * FROM navigation") or die ("Pb requette: ".mysql_error());
$donnees = mysql_fetch_array($retour);
echo stripslashes($donnees['value']);
?>
</div>
</table>
</td>
</tr>
</table>
</body>
</html>
Mais une érreure ce produite je regarde un peu la mais autant je pense qu'il n'ai pas la peine d'indiquer la base de donnée
vue que je l'ai
Regarder le code source http://nhorrat.fr
Warning: main(../includes/config.php) [function.main]: failed to open stream: No such file or directory in /homepages/35/d228721493/htdocs/index.php on line 165

Fatal error: main() [function.require]: Failed opening required '../includes/config.php' (include_path='.:/usr/lib/php') in /homepages/35/d228721493/htdocs/index.php on line 165
0
Viper
 
Je pense que c'est plutot dans un autre fichier ?
Que dans indiex.p^hp ce que vous m'avez passé ?
0
Alain_42 Messages postés 5413 Statut Membre 894
 
Mais il me semble que dans ton premier post tu indiquait que l'erreur était sortie dans index.php
"Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /homepages/35/d228721493/htdocs/index.php on line 166"

l'erreur est pour le moment dans ton require_once: le chemin vers le fichier n'est pas bon je pense.

Si il faut faire mysql_select_db(....)

ou alors faire mysql_connect_db(host,login,pass,db)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Viper
 
dans mon index.php en début de page j'ai
<?php session_start();
define('PUN_ROOT', './forum/');
require PUN_ROOT.'include/common.php';
require_once('includes/config.php');
mysql_connect($serveur_mysql, $user_mysql, $pass_mysql);
mysql_select_db($bdd_mysql);
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr">
<head>

Donc si vous voulez j'ai déjà la source ..
0
Alain_42 Messages postés 5413 Statut Membre 894
 
Ha oui ok tu l'avais déja dans ce fichier la partie connexion à la base.

Donc enlèves la ou je t'avais dis de la mettre.

mais laisses la trace d'erreur sur mysql_query(...) or die(....)
0
Viper
 
Omg !
Je sais mais regarder votre méssage !
Pb requette: Table 'db229915200.navigation' doesn't exist
Je ne vois pas pourquoi j'ai changer votre code en supprimant deux ou trois trucs

table width="100%" cellpadding="0" cellspacing="0">
<td width="right" valign="top">
<div id="right">
<div id="navigation">
<br />
<?php
$retour = mysql_query("SELECT * FROM navigation") or die ("Pb requette: ".mysql_error());
$donnees = mysql_fetch_array($retour);
echo stripslashes($donnees['value']);
?>
</div>
</table>
</td>
</tr>
</table>
</body>
</html>
0
matshuda Messages postés 26 Statut Membre 1
 
essayez de changer les ' a des " dans la linge :

$retour = mysql_query('SELECT * FROM navigation');

pour que sa soi :
$retour = mysql_query("SELECT * FROM navigation");
0
Viper
 
Je teste ça tout de suite !
0
Viper
 
Parse error: syntax error, unexpected T_LOGICAL_OR in /homepages/35/d228721493/htdocs/index.php on line 166
0
Viper
 
Autant pour moi j'ai foiré j'ai recommancer et tjr le même pb
0
Dr Zoidberg Messages postés 547 Statut Membre 100
 
Quel est le contenu de ta ligne 166 ?
0
Viper
 
Le contenu est
$donnees = mysql_fetch_array($retour);
qui est dans index.php dans lcette partie
</table>
<?php } ?>
</div>

<table width="100%" cellpadding="0" cellspacing="0">
<td width="right" valign="top">
<div id="right">
<div id="navigation">
<br />
<?php
$retour = mysql_query("SELECT * FROM navigation") or die ("Pb requette: ".mysql_error());
$donnees = mysql_fetch_array($retour);
echo stripslashes($donnees['value']);
?>
</div>
</table>
</td>
</tr>
</table>
</body>
</html>
0
Viper
 
la bdd.sql est correcte à votre avis ?
C'est dans index seulement ?
0
Dr Zoidberg Messages postés 547 Statut Membre 100
 
Si tu as toujours Table 'db229915200.navigation' doesn't exist
Le problème vient probablement de la base, es tu certain que la table existe sur cette base ? peux tu la voir dans un PhpMyAdmin par exemple ?
0
Viper
 
enfaite non j'ai rien modifier dedans.
Dans quel fichier vous me parler ?
Car je ne comprend pas la ???
Vous me dites par exemple que il faut que j'accede au serveur
qui 1&1 pour mon cas et que j'ajoute un module navigation ?
mais n'est ce pas automatique lorsque je le met dans le fichier bdd.sql ?
dans ce format la ?
-- --------------------------------------------------------

--
-- Structure de la table `navigation`
--

CREATE TABLE `navigation` (
`value` text NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

--
-- Contenu de la table `navigation`
--

INSERT INTO `navigation` (`value`) VALUES
('Test');
0
Viper
 
Oui de part 1&1 j'ai un phpmyadmin mais je ne vois pas de module navigation ?
Mais je pensais que ça ce faisait automatiquement avec la bdd.sql ????
Sinon comment faire ?
0
Dr Zoidberg Messages postés 547 Statut Membre 100
 
Le fichier .sql est destiné a être exécuté par mysql pour qu'il créer la table, le fichier .sql n'est pas une base de données en lui-même.

Dans phpmyadmin : soit tu créer la table 'navigation' directement, soit tu peux importer ton .sql
0
Viper
 
oh mon dieu, si j'importe bdd.sql vous pensez que ça peut marcher ?
0
Dr Zoidberg Messages postés 547 Statut Membre 100
 
Je pense, le fichier bdd.sql à l'air correcte à première vue.

Bon courage
0
Viper
 
Merci bcp j'essaye je fait un save dabord !
0