Encrage valeurs sql dans un tableau via php. [Résolu/Fermé]

Signaler
Messages postés
68
Date d'inscription
dimanche 16 mars 2014
Statut
Membre
Dernière intervention
24 janvier 2017
-
Messages postés
68
Date d'inscription
dimanche 16 mars 2014
Statut
Membre
Dernière intervention
24 janvier 2017
-
Bonjour, J'ai un problème dans mon code "Parse error: syntax error, unexpected 'societe' (T_STRING) in C:\Program Files (x86)\EasyPHP-DevServer-14.1VC11\data\localweb\my portable files\administrationpro\pageadmin.php on line 11"

Je souhaites afficher toutes mes valeurs de la base de donnés dans un tableau qui ensuite pourra être modifiable etc...
Le code intégral est certainement obsolète, hormis ces fautes de syntaxes. Si vous avez un moyen plus simple pour mettre en tableau mes valeurs SQL, je suis évidemment preneur! sachant que le php4 n'est plus compatible, je m'arrache les cheveux ces derniers temps , héhé.

Merci grandement pour votre aide !

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Page Administration</title>
</head>

<?php  
$db= mysql_connect("localhost", 'root',''); 
mysql_select_db('iplanet',$db);
$sql = mysql_query("SELECT * FROM societe") or die(mysql_error());
php mysql_close();
?>

<table>
<caption>Gestion des sociétés</caption>
            <thead>
            <tr>
                <th><h3>Sociétés</h3></th>
            </tr>
            <tr>
                <th>Code</th>
                <th>Libellé</th>
                <th>Rue</th>
                <th>Ville</th>
                <th>Code Postal</th>
                <th>Téléphone</th>
                <th>mail</th>
            </tr>
            </thead>
   
 <?php
$result = mysql_query($sql);
while($donnees = mysql_fetch_array($reponse)) {
?>

<tbody>
<tr>
<td><?php echo $données['codeSociete'];?></td>
<td><?php echo $donnees['libSociete']);?></td>
<td><?php echo $donnees['rueSociete'];?></td>
<td><?php echo $donnees['villeSociete'];?></td>
<td><?php echo $donnees['CPSociete'];?></td>
<td><?php echo $donnees['telSociete'];?></td>
<td><?php echo $donnees['mailSociete'];?></td>
</tr>
</table>
</tbody>


</html>


4 réponses

Messages postés
840
Date d'inscription
vendredi 2 novembre 2012
Statut
Membre
Dernière intervention
20 décembre 2015
117
Bonjour !
Pleins de petites problème :

$sql = mysql_query("SELECT * FROM societe") or die(mysql_error());
Query faite et rentré dans la variable $sql
$result = mysql_query($sql);
Ta requête est déjà faite, tu refait une query d'un jeu de résultat => problème.
$donnees = mysql_fetch_array($reponse)
$reponse ? Tu ne l'a jamais rempli, $reponse ne vaut rien, ton while retournera donc toujours False.
$données
Un petit accent en trop
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 79028 internautes nous ont dit merci ce mois-ci

Messages postés
1322
Date d'inscription
mardi 4 juin 2013
Statut
Membre
Dernière intervention
7 mars 2016
630
Salut, déjà est-ce que ta requête est bonne? Tu as une table "societe" en minuscules, en attributs 'codeSociete','libSociete', 'rueSociete', 'villeSociete', 'CPSociete', 'telSociete', 'mailSociete'?

Par contre, j'ignore si c'est une faut de frappe mais tu as oublié un "?" à la ligne 38 de ton code pour fermer la balise <?php ?>, sur cette même ligne, tu as un $données qui est une variable non définie.
Messages postés
68
Date d'inscription
dimanche 16 mars 2014
Statut
Membre
Dernière intervention
24 janvier 2017

Merci pour ta réponse.

'societe' (
'codeSociete' varchar(6) NOT NULL,
'libSociete' varchar(50) DEFAULT NULL,
'rueSociete' varchar(50) NOT NULL,
'villeSociete' varchar(50) NOT NULL,
'CPSociete' int(5) NOT NULL,
'telSociete' int(10) NOT NULL,
'mailSociete' varchar(70) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1

Tout concorde, effectivement en résolvant l'erreur du "?", il n'y a plus d'erreur.
Mais rien n'apparait dans mon tableau, et c'est sur ce point que c'est malheureux !
Messages postés
1322
Date d'inscription
mardi 4 juin 2013
Statut
Membre
Dernière intervention
7 mars 2016
630
Ok, j'ignore ton niveau de compétences en PHP, mais que t'affiche un var_dump($donnees); dans ta boucle?
Messages postés
68
Date d'inscription
dimanche 16 mars 2014
Statut
Membre
Dernière intervention
24 janvier 2017

Effectivement, je me suis mélangé dans mon code, et je n'avais même pas pu éditer mon post ;P

Quoi qu'il en soit, je n'avais pas cherché plus loin car j'ai opté pour la solution PDO, chose qu'est un peu plus au gout du jour n'est ce pas ;)

Pour les éventuels futurs intéressés, voilà le procédé.

<?php
   try { 
   $base = new PDO('mysql:host=localhost; dbname=iplanet', 'root'. '');
   }
   catch(exception $e)  {
   die ('Erreur '.$e->getMessage());
   }
   $base->exec("SET CHARACTER SET utf8");
   $retour = $base ->query('SELECT * FROM utilisateur');
   echo "<table border=1><caption>Gestion des utilisateurs </caption>";
   ?>
<thead>
            <tr>
                <th>titre1 </th>
                <th>titre 2 </th>
                <th>titre 3</th>
                <th>titre 4</th>
                <th>titre 5</th>
            </tr>
 </thead>
   <?php
   while ($data = $retour ->fetch()) {
   echo "<tr><td>".$data['idUtil']."</td>";
   echo "<td>".$data['nomUtil']."</td>";
   echo "<td>".$data['prenomUtil']."</td>";
   echo "<td>".$data['fonctionUtil']."</td>";
   echo "<td>".$data['infoUtil']."</td></tr>";
   }
   echo "</table>";
   $base = null;
   ?>



Merci pour vos réponses, je met donc tout ça en résolu!