Petit souci d'affichage

Signaler
Messages postés
49
Date d'inscription
mardi 26 décembre 2000
Statut
Membre
Dernière intervention
16 décembre 2010
-
Messages postés
49
Date d'inscription
mardi 26 décembre 2000
Statut
Membre
Dernière intervention
16 décembre 2010
-
Bonjour à tous,
j'ai un petit souci d'affichage sur ma page et je ne comprend pas pourquoi ça ne fonctionne pas voila mon script
<?php
//modification2.php
include('config.php');
?>
  <?php

  $id  = $_GET["idPersonne"] ;
 
  //requête SQL:
  $sql "SELECT * FROM personnes  WHERE id ".$id ;
 
  //exécution de la requête:
  $requete = mysql_query( $sql, $cnx ) ;
 
  //affichage des données:
  if( $result = mysql_fetch_object( $requete ) )
  {
  ?><style type="text/css">
<!--
body {
background-image: url(../image/ban/fondpop.png);
background-repeat: no-repeat;
}
-->
</style>
  <?php echo($id) ;?>,

----

<?php echo($result->nom) ;?>,

----

<?php echo($result->description) ;?>,

----

Fermer la fenetre


  
  <?php
  }//fin if 
  ?>
  


et voila ce que ça m'ffiche quand je lance la page

Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in /homepages/12/d307641943/htdocs/sagesse3/include/profil.php on line 13

Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in /homepages/12/d307641943/htdocs/sagesse3/include/profil.php on line 16

est ce que quelqu'un peux m'aider s'ils vous plait?

7 réponses

Messages postés
1309
Date d'inscription
samedi 31 janvier 2009
Statut
Membre
Dernière intervention
5 juin 2013
14
Salut,

La réponse est dans la question, le premeir des deux message d'erreur te donne la cause du problème.

Soit dit en passant, ta as une faille de sécurité monumentale, on fais des injections sql comme on veux. Regarde donc du côté intval() et ctype_digit() pour corriger ça (et mysql_real_escape_string() pour tout ce qui doit être entouré de quotes).
Messages postés
49
Date d'inscription
mardi 26 décembre 2000
Statut
Membre
Dernière intervention
16 décembre 2010

Merci de ta réponse.
Quelque chose comme ça?

<?php
//modification2.php
include('config.php');
?>
  <?php

  $id  = $_GET["idPersonne"] ;
 
  //requête SQL:
  $sql "SELECT * FROM personnes  WHERE id ".$id ;
 
  //exécution de la requête:
  $requete = intval( $sql, $cnx ) ;
 
  //affichage des données:
  if( $result = mysql_real_escape_string( $requete ) )
  {
  ?><style type="text/css">
<!--
body {
background-image: url(../image/ban/fondpop.png);
background-repeat: no-repeat;
}
-->
</style>
  <?php echo($id) ;?>,

----

<?php echo($result->nom) ;?>,

----

<?php echo($result->description) ;?>,

----

Fermer la fenetre


  
  <?php
  }//fin if 
  ?>
  


mais maintenant du coup je nes plus rien qui s'affiche!
Messages postés
1309
Date d'inscription
samedi 31 janvier 2009
Statut
Membre
Dernière intervention
5 juin 2013
14
Quelque chose comme ça?

Non.

Un peu de documentation pour t'aider, bien que tu aurais déjà dû la trouver par toi même :
Injection SQL (sur php.net)
Injection SQL (sur wikipedia)
Messages postés
49
Date d'inscription
mardi 26 décembre 2000
Statut
Membre
Dernière intervention
16 décembre 2010

Ba en faite je suis super novice en php donc j'ai encore un peu de mal avec ce genre de sécuriter
Messages postés
49
Date d'inscription
mardi 26 décembre 2000
Statut
Membre
Dernière intervention
16 décembre 2010

et ça serrai à cause de ça que rien ne s'affiche?
Messages postés
1309
Date d'inscription
samedi 31 janvier 2009
Statut
Membre
Dernière intervention
5 juin 2013
14
et ça serrai à cause de ça que rien ne s'affiche?

Non. Comme je te l'ai dit dans mon premier message, le message d'erreur te donne la réponse, après je ne vois pas en quoi il serait utile de te répéter ce que dit déjà ce message.
Messages postés
49
Date d'inscription
mardi 26 décembre 2000
Statut
Membre
Dernière intervention
16 décembre 2010

ba en faite je n'ai plus de message ça me fait une page blanche
<?php
//modification2.php
include('config.php');
?>
  <?php

  $id  = $_GET["idPersonne"] ;
 
  //requête SQL:
  $sql "SELECT * FROM personnes  WHERE id ".$id ;
 
  //exécution de la requête:
  $requete = sprintf( $sql, $cnx ) ;
 
  //affichage des données:
  if( $result = mysql_real_escape_string( $requete ) )
  {
  ?><style type="text/css">
<!--
body {
background-image: url();
background-repeat: no-repeat;
}
-->
</style>
  <?php echo($result->nom) ;?>,

----

<?php echo($result->description) ;?>,

----

Fermer la fenetre


  
  <?php
  }//fin if 
  ?>