Acharnement php/mysql [Résolu]

Signaler
Messages postés
42
Date d'inscription
mardi 16 octobre 2007
Statut
Membre
Dernière intervention
25 avril 2008
-
Messages postés
42
Date d'inscription
mardi 16 octobre 2007
Statut
Membre
Dernière intervention
25 avril 2008
-
Bonjour a tous,

je suis en formation informatique et j'essaie de comprendre le langage php et la gestion de base sql (ce qui n'est pas simple)

J'avoue que je bloque sur deux trois trucs je m'explique:

J'ai une page qui m'affiche des données de mysql (14 colonnes dont
la 1ère l'id incrémenté dans sql) jusque la tout va bien la moitié des
colonnes sont a compléter par un utilisateur.

Pour cela il clique sur l'id à modifier et cela l'emmène sur une feuille où (et c'est la que ca se complique pour moi)

il voit un formulaire avec les données des 7. 1ère colonnes sans pouvoir les modifier.

Mais, il faut qu'il puisse modifier le reste des colonnes, donc
ajouter des données dans mysql selon l'id choisit avec un bouton
valider.

Un petiit plus pour les amateurs je veux faire aussi un bouton qui
permet d'archiver une ligne l'utilisateur devra rentrer l'id et cela
supprimera cette ligne de la table pour la mettre dans une autre qui se
nomme archive.

Je suis assez novice dans ce langage si une ame charitable pouvait m'éclaircir merci d'avnce.

Voici le code:

1ère page

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >

<head>

<title>Suivi</title>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

</head>



<link href="style.css" rel="stylesheet" type="text/css">



<?php

echo '

';

$date = date("d-m-Y");

$heure = date("H:i");

Print("Nous sommes le $date et il est $heure" );

?>

<li>[style.css

<?php

// information pour la connection à le DB

$host = 'localhost';

$user = 'root';

$pass = '';

$db = 'ogeb';

// connection à la DB

$link = mysql_connect ($host,$user,$pass) or die ('Erreur : '.mysql_error() );

mysql_select_db($db) or die ('Erreur :'.mysql_error());

// requête SQL qui compte le nombre total d'enregistrements dans la table et qui

//récupère tous les enregistrements

$select = 'SELECT
id,date,uet,nom,delai,destinataire,libelle,pilote,reponse,complementaire,fournisseur,avanc­ement,temps,fin
FROM suivi_ogeb';

$result = mysql_query($select,$link) or die ('Erreur : '.mysql_error() );

$total = mysql_num_rows($result);

// si on a récupéré un résultat on l'affiche.

if($total) {

// début du tableau

echo ''.\"\n\";

// première ligne on affiche les titres prénom et surnom dans 2 colonnes

echo '----
';

echo 'Numéro

, ';

echo 'Date

, ';

echo 'UET

, ';

echo 'Nom

, ';

echo 'Délai

, ';

echo 'Destinataire

, ';

echo 'Libellé

, ';

echo 'Pilote

, ';

echo 'Réponse

, ';

echo 'Informations
complementaires

, ';

echo 'Informations
fournisseurs

, ';

echo 'Avancement

, ';

echo 'Temps passé

, ';

echo 'Date de fin

, ';

echo ''.\"\n\";

// lecture et affichage des résultats sur 2 colonnes, 1 résultat par ligne.

while($row = mysql_fetch_array($result)) {

echo '----
';

echo ']'.$row['id'].', ';

echo ''.$row['date'].', ';

echo ''.$row['uet'].', ';

echo ''.$row['nom'].', ';

echo ''.$row['delai'].', ';

echo ''.$row['destinataire'].', ';

echo ''.$row['libelle'].', ';

echo ''.$row['pilote'].', ';

echo ''.$row['reponse'].', ';

echo ''.$row['complementaire'].', ';

echo ''.$row['fournisseur'].', ';

echo ''.$row['avancement'].', ';

echo ''.$row['temps'].', ';

echo ''.$row['fin'].', ';

echo ''.\"\n\";

}

echo '
'."\n";

// fin du tableau.

}

else echo 'Pas d\'enregistrements dans cette table...';

// on libère le résultat

mysql_free_result($result);

?>

</script>



</html>

2ème page

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >

<head>

<title>Suivi</title>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

</head>



<link href="style.css" rel="stylesheet" type="text/css">



<?php

$cnx = mysql_connect( "localhost", "root") or die (mysql_error());

$db = mysql_select_db( "ogeb" ) or die (mysql_error());

$id = $_GET["id"] ;

$sql = "SELECT * FROM suivi_ogeb

WHERE id= '$id' ";

$requete = mysql_query( $sql, $cnx ) or die (mysql_error());

if( $result = mysql_fetch_object( $requete ) )

?>

<form method='post' action='suivi.php'>

<?php

echo($result->id) ;

echo($result->date) ;

echo($result->uet) ;

echo($result->nom) ;

echo($result->delai) ;

echo($result->destinataire) ;

echo($result->libelle) ;

?>

pilote"?>>

reponse"?>>





</form>



</html>

Donc là où je bloque c'est pour le formulaire de modification.

Bon vous allez trouver sans doute pas mal d'erreur mais ne soyez
pas trop dur je découvre le php (que je trouve d'ailleur passionnant)
Je prend toutes les remarques à condition qu'elles soient intéressantes
bien sur.

Le site sera utilisé sur IE.

Merci d'avnce et bonne journée...

12 réponses

Messages postés
42
Date d'inscription
mardi 16 octobre 2007
Statut
Membre
Dernière intervention
25 avril 2008

Messages postés
81
Date d'inscription
vendredi 19 novembre 2004
Statut
Membre
Dernière intervention
7 août 2009

Salut,

Je n'ai pas lu tout ton code, toujours est-il que voici une possible solution à ton problème :
Lorsque tu récupères tes données par exmeple $champ1, il faut que tu le mettes dans un formulaire, dans un champ input
genre readonly />
Le paramètre readonly te permet de le verrouiller.
Et sur les autres champs, c'est pareil sans le readonly.

J'espère que cela t'aidera.
@++

Didine
Messages postés
42
Date d'inscription
mardi 16 octobre 2007
Statut
Membre
Dernière intervention
25 avril 2008

Bonjour Didine, merci de me répondre.
Alors c'est ce que je pensé mais le problème c'est que ça ne fonctionne pas :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
   <head>
       <title>Suivi</title>
       <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
   </head>
  
 <link href="style.css" rel="stylesheet" type="text/css">
 
 

 <?php
 $cnx = mysql_connect( "localhost", "root")  or die (mysql_error());
 $db = mysql_select_db( "ogeb" )  or die (mysql_error());
 $id  = $_GET["id"] ;
 $sql = "SELECT * FROM suivi_ogeb
      WHERE id= '$id' ";
 $requete = mysql_query( $sql, $cnx )  or die (mysql_error());
 
if( $result = mysql_fetch_object( $requete ) )
?>
<form method='post' action='suivi.php'>
readonly />


</form>

</html>

ca m'affiche un rectangle avec $id à l'interieur est ce que ca ne pourrait pas venir de:

<?php

 $cnx = mysql_connect( "localhost", "root")  or die (mysql_error());

 $db = mysql_select_db( "ogeb" )  or die (mysql_error());

 $id  = $_GET["id"] ;

 $sql = "SELECT * FROM suivi_ogeb

      WHERE id= '$id' ";

 $requete = mysql_query( $sql, $cnx )  or die (mysql_error());

 

if( $result = mysql_fetch_object( $requete ) )

?>

je ne vois vraiment pas mon erreur ....
En tout cas merci de prendre le temps de me répondre
Messages postés
81
Date d'inscription
vendredi 19 novembre 2004
Statut
Membre
Dernière intervention
7 août 2009

Essaie de mettre des ' ' ou des " "sur ton champ value de input, ça devrait être bon !

Didine
Messages postés
42
Date d'inscription
mardi 16 octobre 2007
Statut
Membre
Dernière intervention
25 avril 2008

Bonjour, je suis de retour et toujours le meme problème cela ne fonctionne pas voilà ou j'en suis et le rapport d'erreur est:

Parse error: syntax error, unexpected T_ECHO in
C:\wamp\www\test\suivi.php on line 28

Je ne vois vraiment pas où se trouve l'erreur

Voici le code:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
   <head>
       <title>Suivi</title>
       <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
   </head>
  
<link href="style.css" rel="stylesheet" type="text/css">

 <?php
 $cnx = mysql_connect( "localhost", "root")  or die (mysql_error());
 $db = mysql_select_db( "ogeb" )  or die (mysql_error());
 $id  = $_GET["id"] ;
 $sql = "SELECT * FROM suivi_ogeb
      WHERE id= '$id' ";
 $requete = mysql_query( $sql, $cnx )  or die (mysql_error());
 
if( $result = mysql_fetch_object( $requete ) )
$out="";
?>

<form method='post' action='suivi.php'>
<?php
$out="";

$out .= "id)+"" />";
$out .= "date)+"" />";
$out .= "uet)+"" />";
$out .= "nom)+"" />";
$out .= "delai)+"" />";
$out .= "destinataire)+"" />";
$out .= "libelle)+"" />";
$out .= "complementaire)+"" />";

echo $out;

' readonly />

?>
</form>

</html>

Merci par avance de votre aide
Messages postés
42
Date d'inscription
mardi 16 octobre 2007
Statut
Membre
Dernière intervention
25 avril 2008

il y'a quelqu'un?
Messages postés
81
Date d'inscription
vendredi 19 novembre 2004
Statut
Membre
Dernière intervention
7 août 2009

Il doit manquer un ; sur ta ligne 27 (par rapport à ton message d'erreur).
C'est quoi le code de tes lignes 27 à 29 ?

Didine
Messages postés
42
Date d'inscription
mardi 16 octobre 2007
Statut
Membre
Dernière intervention
25 avril 2008

Bonsoir Didine désolé je suis rentré là j'espère que tu seras là demain pour m'aider à vrai dire ça fait une semaine que je suis bloqué sur ce formulaire et c'est pour le travail,
de plus ce n'est qu'un détail comparé à ce que je veux faire. J'ai déjà pas mal acquis de chose en site web mais le php est assez compliqué comme beaucoup de langage de prog
bonne soirée à demain
Messages postés
42
Date d'inscription
mardi 16 octobre 2007
Statut
Membre
Dernière intervention
25 avril 2008

Bonjour, les lignes 27, 28, 29 sont:

$out .= "id)."" />";
$out .= "date)."" />";
$out .= "uet)."" />";

Merc i
Messages postés
42
Date d'inscription
mardi 16 octobre 2007
Statut
Membre
Dernière intervention
25 avril 2008

je n'ai plus d'erreur il ne fallait pas mettre d'echo mais par contre les données ne s'affichent pas seulement mes boutons envoyer et reset
Messages postés
81
Date d'inscription
vendredi 19 novembre 2004
Statut
Membre
Dernière intervention
7 août 2009

Désolée, je ne pourrais t'aider plus que ça...j'espère que quelqu'un d'autre viendra à ton secours !

Didine
Messages postés
42
Date d'inscription
mardi 16 octobre 2007
Statut
Membre
Dernière intervention
25 avril 2008

C'est pas grâve c'est gentil dékà merci et sinon j'ai posté sur d'autres forum et apprement une personne m'a dit d'allez voir du côté des champs disabled et non les inpout type hidden je vais voir ça demain ça m'a l'air bien compliqué.
Merci encore