[php,mysql] erreur, que je comprend pas :o(

blbg Messages postés 302 Date d'inscription   Statut Membre Dernière intervention   -  
blbg Messages postés 302 Date d'inscription   Statut Membre Dernière intervention   -
bonsoir ....

c'est tjs moi avec mon projet d'étudiants !
la on fait les pages pour remplir la BD,

et là celle que je fait, quand j'entre un étudiants, & que je revient sur la page pour d'autre, il me met ça :

Warning: Accès refusé pour l'utilisateur: 'ODBC@localhost' (mot de passe: NON) in d:\program files\easyphp\www\iut\bdetud.php on line 49


Warning: MySQL Connection Failed: Accès refusé pour l'utilisateur: 'ODBC@localhost' (mot de passe: NON) in d:\program files\easyphp\www\iut\bdetud.php on line 49

Warning: MySQL: A link to the server could not be established in d:\program files\easyphp\www\iut\bdetud.php on line 49

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in d:\program files\easyphp\www\iut\bdetud.php on line 52


& c'est pas ma connection a la BD ..... car je l'ai vérifié et en plus il me rajoute bien l'étudiant mais aussi des lignes vides
et j'ai relus plein de fois, tester plein de truc .... ms je trouve rien ....

si vous pouvez me dire à quoi correspond cette erreur ... ça pourrais m'aider ... ( & si pour vous aider .... il vous faut la source dite le ... en + j'utiliseré [code] ce cout si :o)

merci .... ++ blbg
A voir également:

9 réponses

asevere Messages postés 13095 Date d'inscription   Statut Webmaster Dernière intervention   426
 
bonsoir blbg

peut tout nous faire un copier coller de ton code entre balises :)

merci !

Na kaer eo va Breizh,
gand ar mor glaz èn-dro dezi !
0
Utilisateur anonyme
 
bonsoir (-:

à titre général et à l'adresse de tous, j'ajoute qu'il serait intéressant, quand vous avez un message d'erreur vous disant "zblorgh on line 27124" et que vous demandez un diagnostic, que vous nous disiez ce qu'elle contient, la ligne 27124 (((-:

kinder.surprise,
le maton du matou
0
asevere Messages postés 13095 Date d'inscription   Statut Webmaster Dernière intervention   426
 
pas mieux (-:

Na kaer eo va Breizh,
gand ar mor glaz èn-dro dezi !
0
Utilisateur anonyme
 
Personnellement, je crois que toutes ces erreurs viennent du fait que t'es pas connecté! Quand on refuse une connexion, on ne peut pas modifier une base de données (à moins que tu fasses plusieurs connexions en parallele, qu'il y en ait une qui marche mais que tu nous l'explique pas).
Mais c'est vrai que sans code c'est difficile de dire...

Fat_Cartman,
Parce que je le vaux bien... 
0
blbg Messages postés 302 Date d'inscription   Statut Membre Dernière intervention   10
 
oki dc voila le code ......

ps .... j'utisise qu'1 fichier pr la connection ..... à la base c'est tt le tps ... le même. et comme il m'en ajoute ..... je pence pas que ça vient de là ... mais bon .... on ne sais jamais ....


<head>
<title>Bienvenue, pour une recherche de stage</title>

<script language="JavaScript">
<!--
function foc(frm,chp)
{
document.forms[frm].elements[chp].focus();
}
// -->
</script>
</head>

<body bgcolor="#bdd9df" text="#270C52" onload="foc('bdEtud','nom')">


<?php

if(empty($promo) || empty($cy))
{
include("connect.php");
echo'<form action="bdEtud.php" target="principal" methode=GET name="bdEtud2" id="bdEtud2"> // bdEtud.php c'est ce fichier là !!!
<table valign="middle" align="center" border=1 cellspacing=0 cellspadding=0 width="80%">
<tr align="center" valign="middle">
<td>Promotion : </td>
<td align="left"><select name="promo" size=1>';

$query = 'SELECT MIN(promo) AS mi,MAX(promo) AS ma FROM Etud';
$result = mysql_query($query);

while($row = mysql_fetch_array($result))
{
for($i=$row[ma]+1;$i>=$row[mi];$i--) { echo' <option value='.$i.'>'.$i;}
}

echo ' </select></td>
<td>Cycle : </td>
<td align="left"><select name="cy" size=1><option value="normal">normal
<option value="spécial">spécial</select></td>
<td><input type="submit" value="Ok"></td>
</tr></table></form>';
}
else
{
include("ajoutEtud.php"); // voire aprés pr la source !
$query = 'SELECT * FROM Etud WHERE promo='.$promo.' AND cycle='.$cy.' ORDER BY Nom,Prenom';
$result = mysql_query($query); /**** ligne 49 !!!!!
$couleur=0;
echo ' <table valign="middle" align="center" border=1 cellspacing=0 cellspadding=0 width="80%">';
while($row = mysql_fetch_array($result)) /****** ligne 42 !!!!
{
if($couleur==0) { echo '<tr align=\'center\'>'; }
else { echo' <tr align=\'center\' bgcolor=\'#ffffcc\'>'; }
echo'
<td>' .$row[Promo]. '</td>
<td>' .$row[cycle]. '</td>
<td align=\'left\'><b>' .$row[Nom]. '</b></td>
<td align=\'left\'><b>' .$row[Prenom]. '</b></td>';

if( $row[Deci1]=='admis') echo ' <td bgcolor=\'#99ff99\'> admis</td> ';
if( $row[Deci1]=='redouble') echo ' <td bgcolor=\'#facb6b\'> redouble</td> ';
if( $row[Deci1]=='réoriente') echo ' <td bgcolor=\'#ff9999\'> réorienté</td> ';
if( $row[Deci1]=='en cours') echo ' <td bgcolor=\'#00ffff\'> en cours</td> ';
if( empty($row[Deci1])) echo ' <td> </td> ';

if( $row[Deci2]=='admis') echo ' <td bgcolor=\'#99ff99\'> admis</td> ';
if( $row[Deci2]=='redouble') echo ' <td bgcolor=\'#facb6b\'> redouble</td> ';
if( $row[Deci2]=='réoriente') echo ' <td bgcolor=\'#ff9999\'> réorienté</td> ';
if( $row[Deci2]=='en cours') echo ' <td bgcolor=\'#00ffff\'> en cours</td> ';
if( empty($row[Deci2])) echo ' <td> </td> ';

if( $row[Deci3]=='admis') echo ' <td bgcolor=\'##99ff99\'> admis</td> ';
if( $row[Deci3]=='redouble') echo ' <td bgcolor=\'#facb6b\'> redouble</td> ';
if( $row[Deci3]=='réoriente') echo ' <td bgcolor=\'#ff9999\'> réorienté</td> ';
if( $row[Deci3]=='en cours') echo ' <td bgcolor=\'#00ffff\'> en cours</td> ';
if( empty($row[Deci3])) echo ' <td> </td> ';
echo '</tr>';
$couleur=($couleur+1)%2;
} // while


echo '<form action="bdEtud.php" target="principal" methode=GET name="bdEtud" id="bdEtud">
<tr align="center" bgcolor="#7cb3c0">
<td>promo</td>
<td>cycle</td>
<td>Nom</td>
<td>Prénom</td>
<td>1e année</td>
<td>2e année</td>
<td>3e année</td>
</tr>
<tr align="center" bgcolor="#7cb3c0">
<td>titre</td>
<td colspan=2>adresse</td>
<td>Code Postal</td>
<td colspan=2>ville</td>
<td>nationnalité</td>
</tr>
<tr align="center">
<td width="50"><input name="promo" widht="10" heignt="10" type="text" value=\''.$promo.'\'></td>
<td width="60"><select name="cy" size=1 value=\''.$cy.'\'><option value="normal">normal
<option value="spécial">spécial</select></td>
<td><input name="nomEtud" widht="10" heignt="10" type="text"></td>
<td><input name="prénom" widht="10" heignt="10" type="text"></td>
<td><select name="de1" size=1><option value="en cours">en cours
<option value="admis">admis
<option value="redouble">redouble
<option value="réoriente">réorienté</select></td>
<td><select name="de2" size=1><option value="null">
<option value="en cours">en cours
<option value="admis">admis
<option value="redouble">redouble
<option value="réoriente">réorienté</select></td>
<td><select name="de3" size=1><option value="null">
<option value="en cours">en cours
<option value="admis">admis
<option value="redouble">redouble
<option value="réoriente">réorienté</select></td>
</tr>
<tr align="center">
<td><select name="titr" size=1><option value="Mr">Mr
<option value="Mlle">Mlle
<option value="Mme">Mme
<td colspan=2><input name="adrEtud" widht="10" heignt="10" type="text"></td>
<td><input name="cpEtud" widht="10" heignt="10" type="text"></td>
<td colspan=2><input name="villeEtud" widht="10" heignt="10" type="text"></td>
<td><input name="natio" widht="10" heignt="10" type="text" value="française"></td>
</tr>
<tr align="right" valign="middle">
<td colspan=4><input type="submit" value="Ajouter">
<input type="reset" value="Annuler"></td>
</tr></form></table>
<p align="center"><br><br><b><a href="gereEtud.php">retour, si vous n\'avez plus d\'étudiants à rajouter</a></b></p>'; // gereEtud.php est le sommaire .... pr quitter !!
} // else
?>
</body>
</html>



code de ajoutEtud.php
<?php 

include("connect.php");

/********** liste des noms des variables a ajouter ds la bd ************

$idEtud
$promo
$cy
$nomEtud
$prénom
$aff
$de1 ; de2 ; de3
$infoSupl

$adrEtud
$cpEtud
$villeEtud
$natio
$titr


*************************************************************************/

$varEtud='';
$valEtud='';

if(empty($idEtud))
{
$varEtud='Id';
$valEtud='\'\'';

if(!empty($promo))
{
if(!empty($varEtud)) { $varEtud.=','; }
$varEtud.='Promo';
if(!empty($valEtud)) { $valEtud.=','; }
$valEtud.='\''.$promo.'\'';
}
if(!empty($cy))
{
if(!empty($varEtud)) { $varEtud.=','; }
$varEtud.='cycle';
if(!empty($valEtud)) { $valEtud.=','; }
$valEtud.='\''.$cy.'\'';
}
if(!empty($nomEtud))
{
if(!empty($varEtud)) { $varEtud.=','; }
$varEtud.='Nom';
if(!empty($valEtud)) { $valEtud.=','; }
$valEtud.=strtoupper('\''.$nomEtud.'\'');
}
if(!empty($prénom))
{
if(!empty($varEtud)) { $varEtud.=','; }
$varEtud.='Prenom';
if(!empty($valEtud)) { $valEtud.=','; }
$valEtud.=ucfirst('\''.$prénom.'\'');
}
if(!empty($aff))
{
if(!empty($varEtud)) { $varEtud.=','; }
$varEtud.='aff';
if(!empty($valEtud)) { $valEtud.=','; }
$valEtud.='\''.$aff.'\'';
}
if(!empty($de1))
{
if(!empty($varEtud)) { $varEtud.=','; }
$varEtud.='Deci1';
if(!empty($valEtud)) { $valEtud.=','; }
$valEtud.='\''.$de1.'\'';
}
if(!empty($de2))
{
if(!empty($varEtud)) { $varEtud.=','; }
$varEtud.='Deci2';
if(!empty($valEtud)) { $valEtud.=','; }
$valEtud.='\''.$de2.'\'';
}
if(!empty($de3))
{
if(!empty($varEtud)) { $varEtud.=','; }
$varEtud.='Deci3';
if(!empty($valEtud)) { $valEtud.=','; }
$valEtud.='\''.$de3.'\'';
}
if(!empty($infoSupl))
{
if(!empty($varEtud)) { $varEtud.=','; }
$varEtud.='infosup';
if(!empty($valEtud)) { $valEtud.=','; }
$valEtud.='\''.$infoSupl.'\'';
}

if(($varEtud!='Id' && $varEtud!='Id,Promo,cycle') || $valEtud!='\'\'')
{
$query = 'INSERT INTO Etud('.$varEtud.') VALUES('.$valEtud.')';
$result = mysql_query($query);
$idEtud = mysql_insert_id();
}
} // $idEtud est != null

/**************************************/
$varInfo='idEtud';
$valInfo='\''.$idEtud.'\'';

if(!empty($adrEtud))
{
if(!empty($varInfo)) { $varInfo.=','; }
$varInfo.='adresse';
if(!empty($valInfo)) { $valInfo.=','; }
$valInfo.='\''.$adrEtud.'\'';
}
if(!empty($cpEtud))
{
if(!empty($varInfo)) { $varInfo.=','; }
$varInfo.='cp';
if(!empty($valInfo)) { $valInfo.=','; }
$valInfo.='\''.$cpEtud.'\'';
}
if(!empty($villeEtud))
{
if(!empty($varInfo)) { $varInfo.=','; }
$varInfo.='ville';
if(!empty($valInfo)) { $valInfo.=','; }
$valInfo.='\''.$villeEtud.'\'';
}
if(!empty($natio))
{
if(!empty($varInfo)) { $varInfo.=','; }
$varInfo.='nationnalite';
if(!empty($valInfo)) { $valInfo.=','; }
$valInfo.='\''.$natio.'\'';
}
if(!empty($titre))
{
if(!empty($varInfo)) { $varInfo.=','; }
$varInfo.='titre';
if(!empty($valInfo)) { $valInfo.=','; }
$valInfo.='\''.$titre.'\'';
}

if($varInfo!='idEtud')
{
$query = 'INSERT INTO infoSup('.$varInfo.') VALUES('.$valInfo.')';
$result = mysql_query($query);
}


/**************************************/

mysql_close();
?>


voila ... dc pr résumer .... normalmt .....
c'est pr ajouter des éléve un par un ..... ( on a aussi prévu par csv lol pr aller + vite ) ou il demande d'abor la promo & le cycle ....
il affiche tt ceux qui sont déjà ds la promo & ce cycle ...... & apré ya des champ pr en ajouter un !!

voila ... merci d'avance .....
0

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

Posez votre question
asevere Messages postés 13095 Date d'inscription   Statut Webmaster Dernière intervention   426
 
hé hé :-p

à la fin de ton "ajoutEtud.php " je vois un mysql_close()
donc plus de connection aprés ton include :)

voili voilou

@++

Na kaer eo va Breizh,
gand ar mor glaz èn-dro dezi !
0
blbg Messages postés 302 Date d'inscription   Statut Membre Dernière intervention   10
 
euh .....
effectivement ..... je savais pas ..... si ça inter réagiser entre les page ....

mais je l'ai supprimer ...... & il met tjs pareil ..... :o(((

de plus ..... vous pouvez constater que ds ajout, il y a 2 ajout ... un ds la table etud & l'autre ds infoSup ...
j'arrive à remplir etud .... ms pas info sup !! alor que je lui met aussi des info ......

là aussi vous voyer pas pourquoi ??
0
asevere Messages postés 13095 Date d'inscription   Statut Webmaster Dernière intervention   426
 
arf bon décidement pas simple ca...

bon là je vois pas... si tu veux tu peux m'envoyer par mail ces deux fichiers, et la structure de ta base de donnée (celle donée par PhpMyAdmin par exemple)

je pourrais y jetter un oeil ce soir...

adrien.severe@free.fr

Na kaer eo va Breizh,
gand ar mor glaz èn-dro dezi !
0
asevere Messages postés 13095 Date d'inscription   Statut Webmaster Dernière intervention   426
 
rebonsoir,

bon tu avait raison cela ne se transmet pas avec l'include :-),

tu peux donc remettre mysql_close la ou il etait.

Par contre dans bdEtude.php tu te connectes à la bdd que dans le premier if donc quand on passe dans le else, plus de connection...

il faudrait donc que ton include ("connect.php") soit la premiere ligne de ton fichier, enfin aprés "<?php"

comme ca la connection serait valable pour tout la page :-)

je l'ai testé, je ne sait pas si ca rempli la table tout comme il faut, mais il n'y a plus d'erreur de ce coté là!

par contre il y a une erreur a la ligne 52 avec le mysql_fetch_array

>$query = 'SELECT * FROM Etud WHERE promo='.$promo.' AND cycle='.$cy.' ORDER BY Nom,Prenom';

cycle et de type enum donc varchar ou text
dans la requete tu dois donc avoir cycle = "blablabla" avec les double quotes.
il faut donc les echapper, et comme tu echappes des double quotes il faut donc des double quotes partout dans ta requete, ca qui donne:

$query = "SELECT * FROM Etud WHERE promo= ".$promo." AND cycle=\" ".$cy." \" ORDER BY Nom,Prenom";

voili voilou, j'espere que tout le reste fonctionne

@+

bonne nuit

Na kaer eo va Breizh,
gand ar mor glaz èn-dro dezi !
0
asevere Messages postés 13095 Date d'inscription   Statut Webmaster Dernière intervention   426
 
Bon je voulais t'envoyer la page corigée par mail, mais mon smtp est hs il faut croire :-(

Juste un conseil, en php préfere toujours les " aux ' pour les echos, les requetes, ...
Sinon rien a redire le code est trés propre, c'est un plaisir de le lire :-)

@++

Na kaer eo va Breizh,
gand ar mor glaz èn-dro dezi !
0
blbg Messages postés 302 Date d'inscription   Statut Membre Dernière intervention   10
 
merci ....... effectivement ....... là ça affiche plus d'erreur ......
j'vais voir ...... si par hazar ..... ça mé tt ds la base ......

bon aparement tjs pas ..... :o((( mais tampis .... je doit le rendre demain .... dc si y'a des truc qui manque ..... ou ki beug .....
c'est qu'un projet ...... lol

& ... en + avoir fait tt ça ..... en sachant qu'au départ on n'y connaissait vraiment rien au php ...... & juste un peu de mySQL ...... on s'en est bien sorti .....

merci ..... pr le compliment au fait ...... :o)
programmer c'est comme naturel chez moi ..... mdr !!

encore merci ..... ++blbg
0