Page 1 sur 1

Format

Posté : 17 oct. 2005, 19:49
par Dom!
Bonjour le forum !!!!

J'ai créé un tableau dynamique avec des infos de ma base sql dedans, j'ai fait un lien sur le N° de membre qui m'amene sur sa fiche membre.

Mon probleme : Quand le N° de membre est en chiffres pas de probleme par contre quand le N° de membre est sous la forme AA123456
voici le message d'erreur : Unknown column 'AA123456' in 'where clause'

D'ou vient mon probleme ???? merci pour vos réponses...

Ha oui ma colone numero de ma base de donnée est en Varchar 255

Posté : 17 oct. 2005, 19:54
par Cyrano
Il faudrait voir la requête pour être sûr, mais il y a fort à parier que tu n'as pas mis d'apostrophes pour encadrer la valeur:

Code : Tout sélectionner

... WHERE id_membre = 'valeur';
ou en PHP
$sql = "..... WHERE id_membre = '". $id ."';"

Posté : 17 oct. 2005, 20:07
par Dom!
Je pense pourtant avoir bien mis l'encadrement :roll:
<?
include ("verification.php");
?>
<?php require_once('../../Connections/SAGIP.php'); ?>
<?php
$maxRows_contrat = 10;
$pageNum_contrat = 0;
if (isset($_GET['pageNum_contrat'])) {
  $pageNum_contrat = $_GET['pageNum_contrat'];
}
$startRow_contrat = $pageNum_contrat * $maxRows_contrat;

$colname_contrat = "1";
if (isset($_GET['numero'])) {
  $colname_contrat = (get_magic_quotes_gpc()) ? $_GET['numero'] : addslashes($_GET['numero']);
}
mysql_select_db($database_SAGIP, $SAGIP);
$query_contrat = sprintf("SELECT * FROM contrat WHERE numero = %s", $colname_contrat);
$query_limit_contrat = sprintf("%s LIMIT %d, %d", $query_contrat, $startRow_contrat, $maxRows_contrat);
$contrat = mysql_query($query_limit_contrat, $SAGIP) or die(mysql_error());
$row_contrat = mysql_fetch_assoc($contrat);

if (isset($_GET['totalRows_contrat'])) {
  $totalRows_contrat = $_GET['totalRows_contrat'];
} else {
  $all_contrat = mysql_query($query_contrat);
  $totalRows_contrat = mysql_num_rows($all_contrat);
}
$totalPages_contrat = ceil($totalRows_contrat/$maxRows_contrat)-1;
?>

    <? 
echo "<a href=\"accueil.php?utilisateur=$utilisateur&mot_de_passe=$mot_de_passe\">Accueil >></a>";
?>
    <br>
  </span></p>
  <p>&nbsp;</p>
  <table width="756" border="1" align="center" cellspacing="0" class="win_blue">
    <tr class="Text">
      <td><div align="center">Num contrat </div></td>
      <td><div align="center">Compagnie</div></td>
      <td><div align="center">Date d'effet</div></td>
      <td><div align="center">Situation</div></td>
      <td><div align="center">Mouvement</div></td>
      <td><div align="center">Branche</div></td>
    </tr>
    <?php do { ?>
    <tr class="Text">
      <td><div align="center"><a href="fiche_contrat_consult.php?numerocontrat=<?php echo $row_contrat['Numerocontrat']; ?>"><?php echo $row_contrat['Numerocontrat']; ?></a></div></td>
      <td><div align="center"><?php echo $row_contrat['compagnie']; ?></div></td>
      <td><div align="center"><?php echo $row_contrat['dateeffet']; ?></div></td>
      <td><div align="center"><?php echo $row_contrat['situation']; ?></div></td>
      <td><div align="center"><?php echo $row_contrat['mouvement']; ?></div></td>
      <td><div align="center"><?php echo $row_contrat['branche']; ?></div></td>
    </tr>
    <?php } while ($row_contrat = mysql_fetch_assoc($contrat)); ?>
  </table>
  <p><span class="Text">
    <? 
echo "<a href=\"fiche_client_consult.php?utilisateur=$utilisateur&mot_de_passe=$mot_de_passe&numero=$numero\">Retour >></a>";
?>

Posté : 17 oct. 2005, 20:19
par Cyrano
Ben non :
$query_contrat = sprintf("SELECT * FROM contrat WHERE numero = '%s'", $colname_contrat); 
Essaye comme ça maintenant.

Posté : 17 oct. 2005, 20:46
par albat
Ce n'est une question de goûts et de couleurs, mais il y a aussi la syntaxe suivante :
$query_contrat = "SELECT * FROM contrat WHERE numero = '".$colname_contrat."'";
J'ai indiqué cette alternative pour que chacun puisse choisir. ;)


NB : SELECT *, c'est pas bien... Il vaudrait mieux nommer les champs à sélectionner.

Posté : 17 oct. 2005, 20:49
par Dom!
Trop fort :D

Ca fonctionne impecable

wouaaaaaaaaouuuuuuuuu merciiiiiiiiiii :lol:

Posté : 18 oct. 2005, 08:54
par zeus
Un petit [RESOLU] alors ? :roll: