Problemes modif base de D

cs_Dota Messages postés 7 Date d'inscription samedi 10 décembre 2005 Statut Membre Dernière intervention 8 avril 2006 - 2 mars 2006 à 11:53
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 - 2 mars 2006 à 12:49
Bonjour à tous et à toutes,

Je suis en stage et je dois mdifier le code d'un autre en php.

Je posterais la page que je dois modifier . En gros, il s'agit d'un formulaire avec deux boutons envoyer et supprimer mais quand je clique sur l'un des deux boutons il me dit :



Probleme de connexion MySql... Veuillez recommencer plus tard svp!! ( cf code )

voici la page :

<?
require("../utils/connect.php");
//recupération des données du formulaire
@$day=$_POST['day'];
$description = "";
@$month=$_POST['month'];
@$year=$_POST['year'];
@$date=$year."-".$month."-".$day;
@$id=$_POST['id'];
$idmanif = "";
if (isset($_GET['id']))
$idmanif=$_GET['id'];
@$step=$_POST['step'];
$text = "";
if ( isset ( $_POST['step'] ) && $_POST['step'] == 'ok' )
{
$sql = "UPDATE manifestation SET DATEMANIF='{$date}', TITREMANIF='{$_POST['description']}',DESCRIPTIONMANIF='{$_POST['text']}' WHERE `idManifestation` = '".$id."'" ;
echo $sql;
//$res=mysql_query($sql,$connect);
$res = mysql_query ( $sql ) or die ( mysql_error() ) ;
if (mysql_affected_rows($connect)!=0){
print("<script language="javascript" type="text/javascript">window.location="./?message=Opération éffectuée"</script>");
}
else
{
print("<script language="javascript" type="text/javascript">window.location="./?message=Probleme de connexion MySql... Veuillez recommencer plus tard svp!!"</script>");
}
}
if($step=="del")
{
$sql="delete from test.manifestation where IDMANIFESTATION='{$_POST['id']}'";
echo $sql;
//$res=mysql_query($sql,$connect);
$res = mysql_query ( $sql ) or die ( mysql_error() ) ;
if (mysql_affected_rows($connect)!=0){
print("<script language="javascript" type="text/javascript">window.location="./?message=Opération éffectuée"</script>");
}
else{
print("<script language="javascript" type="text/javascript">window.location="./?message=Probleme de connexion MySql... Veuillez recommencer plus tard"</script>");
}
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>
Modification ou suppression d'une manifestation
</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="../utils/style.css" rel="stylesheet" type="text/css">
<?
$sql="SELECT * from manifestation where IDMANIFESTATION='{$idmanif}'";
//$res=mysql_query($sql,$connect);
$res = mysql_query ( $sql ) or die ( mysql_error() ) ;
while($val=mysql_fetch_array($res,MYSQL_ASSOC))
{
$date=$val['DATEMANIF'];
$text=$val['TITREMANIF'];
$description=$val['DESCRIPTIONMANIF'];
}
?>
</head>

Modification ou suppression d'une manifestation

<form name="modifmanif" action="<? $_SERVER['PHP_SELF']?>" method="post">
<table summary="" border="0" width="75%">
----,
Titre
</td>
">,

----

Description détaillée de la manifestation,
<textarea name="text" cols="30" rows="5" ><? print $description;?></textarea>,

----

Date :,

\">
<select name="day">
<script type="text/javascript">
<!--
for(var i =1; i <= 31; i++)
document.write("<option>"+i+"</option>");
// -->
</script>
</select>
<select name="month">
<option value="1">
Janvier
</option>
<option value="2">
Février
</option>
<option value="3">
Mars
</option>
<option value="4">
Avril
</option>
<option value="5">
Mai
</option>
<option value="6">
Juin
</option>
<option value="7">
Juillet
</option>
<option value="8">
Aout
</option>
<option value="9">
Septembre
</option>
<option value="10">
Octobre
</option>
<option value="11">
Novembre
</option>
<option value="12">
Décembre
</option>
</select>
<select name="year">
<script type="text/javascript">
<!--
for(var i =0; i <= 2; i++){
var annee;
var mtnt;
annee=new Date();
mtnt=annee.getFullYear()+i;
document.write("<option>"+mtnt+"</option>");
// -->
}
</script>
</select>





</form>
<form action="<?php $_SERVER['PHP_SELF']?>" method="post" name="del">

" />
<center>

</center>
</form>
</td>
</tr>
</table>

</html>

Je ne comprends pas quel est le problème.

Si la couleur de l'ecriture vous genent dites moi comment rendre mon poste plus lisible et je l'éditerais

Merci d'avance!!

3 réponses

malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
2 mars 2006 à 12:08
Hello,

je passe les problèmes de base, mais :
<?
require("../utils/connect.php");
//recupération des données du formulaire
@$day=$_POST['day'];
$description = "";
@$month=$_POST['month'];
@$year=$_POST['year'];
@$date=$year."-".$month."-".$day;
@$id=$_POST['id'];
$idmanif = "";
if (isset($_GET['id']))
$idmanif=$_GET['id'];
@$step=$_POST['step'];
$text = "";
if ( isset ( $_POST['step'] ) && $_POST['step'] == 'ok' )
{
$sql = "UPDATE manifestation SET DATEMANIF='{$date}', TITREMANIF='{$_POST['description']}',DESCRIPTIONMANIF='{$_POST['text']}' WHERE `idManifestation` = '".$id."'" ;
echo $sql;
//$res=mysql_query($sql,$connect);
$res = mysql_query ( $sql ) or die ( mysql_error() ) ;
if (mysql_affected_rows($connect)!=0){

qu'y a t il dans connect.php?

D'où sors tu la variable $connect ? Quand te connectes tu à ta base ?
Tu fais 2 mysql_query () à la suite...!! Un avec le lien de connexion ($connect...défini on ne sait où), et un sans...ahem...
PUis dans ton while, tu utilises encoree $connect pour mysql_fetch_row! Alors que tu dois utiliser la ressource renvoyée par mysql_query, à savoir $res...

Bref, je suis désolé mais c'est n'importe quoi ce code... ;-)
Revois les bases d'utilisation de mysql avec php.
http://fr2.php.net/manual/fr/ref.mysql.php
0
cs_Dota Messages postés 7 Date d'inscription samedi 10 décembre 2005 Statut Membre Dernière intervention 8 avril 2006
2 mars 2006 à 12:26
bah en fait comme je l'ai dis dans mon premier message ceci n'est pas mon code, il s'agit d'un code que je dois modifier pour un stage et je ne peux pas me permettre de tout refaire ( surtout que je suis une bille en php lol )

mais voici la page connect :

<?
//Nom de la base de données
//$nomDeLaBaseDeDonees="nom de votre base de données";
$nomDeLaBaseDeDonees="test";

//?om du serveur de base de données
//$nomDuServeurMysql="serveur sql";
$nomDuServeurMysql="localhost";

//Nom de l'utilisateur de la base de données
//$nomUtilisateurMySQL="nom de l'utilisateur";
$nomUtilisateurMySQL="root";

//mot de passe de la base de données
//$motDePasseBaseDeDonnees="motdepasse";
$motDePasseBaseDeDonnees="";

//ne pas toucher à ce qui suit
$connect=mysql_connect($nomDuServeurMysql,$nomUtilisateurMySQL,$motDePasseBaseDeDonnees);
mysql_select_db($nomDeLaBaseDeDonees,$connect);

?>

Donc en gros il y a trop de $connect? c'est ça??

Et je peux faire quoi pour que ça marche??

Je me connecte a la base dans connect.php et je fais le lien vers le document en haut de page.
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
2 mars 2006 à 12:49
je t'ai donné un lien, regarde le, et regarde la fonction mysql_affected_rows () tu trouveras un exemlple qui te montrera tes erreurs.
Pour $connect, c'est bon, mais tu dois virer le 1er ou le 2d mysql_query () et mettre $res dans le while.
0
Rejoignez-nous