Problemes modif base de D

Signaler
Messages postés
7
Date d'inscription
samedi 10 décembre 2005
Statut
Membre
Dernière intervention
8 avril 2006
-
Messages postés
10839
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
-
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

Messages postés
10839
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
23
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
Messages postés
7
Date d'inscription
samedi 10 décembre 2005
Statut
Membre
Dernière intervention
8 avril 2006

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.
Messages postés
10839
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
23
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.