Enregistrer des fiches

theseif Messages postés 62 Date d'inscription mercredi 29 août 2012 Statut Membre Dernière intervention 19 mai 2013 - 23 mai 2006 à 23:15
Teclis01 Messages postés 1423 Date d'inscription mardi 14 décembre 2004 Statut Membre Dernière intervention 29 décembre 2012 - 24 mai 2006 à 17:15
Bonjour à tous, pour saisir des renseignements sur de nombreuses fiches je pense les présenter dans un tableau, exemple:


Numéro           , Observation


1                                ,blablabla


2                                ,blablabla


3                                ,blablabla


Ainsi de suite…


Est-ce qu'il est possible d'enregistrer les fiches une par une avec un bouton "Valider" sur chaque ligne par exemple, sans recharger la page à chaque fois.


Si non, est-il possible d'enregistrer toutes les fiches en même temps à la fin de la saisie du tableau.


Je n'arrive pas à concrétiser et je ne trouve pas d'exemple.


Merci d'avance pour vos idées et votre aide.

11 réponses

Teclis01 Messages postés 1423 Date d'inscription mardi 14 décembre 2004 Statut Membre Dernière intervention 29 décembre 2012 4
24 mai 2006 à 00:00
On peut faire chaque chose que tu as énnoncé restes a voir celle que tu preferes et les connaissances que tu as...


1/Est-ce qu'il est possible d'enregistrer les fiches une par une avec un
bouton "Valider" sur chaque ligne par exemple, sans recharger la page à
chaque fois.

Oui avec l Ajax
mais on peut le faire sans ajax avec seulement du php avec rechargement complet de la page


2/Si non, est-il possible d'enregistrer toutes les fiches en même temps à la fin de la saisie du tableau.

Oui aussi juste du php


Alors a toi de voir deja quel "technique" utiliser

--------------------------------------------------------------------------------------------------
         Ilvaut mieux poser une question et passer pour bête que le rester toutesa vie
0
theseif Messages postés 62 Date d'inscription mercredi 29 août 2012 Statut Membre Dernière intervention 19 mai 2013
24 mai 2006 à 09:18
Je dirai que je suis débutant confirmé, et la solution que je recherche doit être fiable, susceptible de gérer une vingtaine de fiches par affichage et pas trop compliqué à réaliser.
Je compte sur toi pour me conseiller.
Merci d'avance.
0
Teclis01 Messages postés 1423 Date d'inscription mardi 14 décembre 2004 Statut Membre Dernière intervention 29 décembre 2012 4
24 mai 2006 à 09:27
bon et bien je pense que tu devrais apprendre a gerer ca deja qu'avec
du php (moi meme qui suis habitué au php et bien l'Ajax je galere pour
le moment)

je suppose que tes fiches seront dans une bdd MySQL ou autre donc elles
ont chacune un numero unique donc pour le moment concentres toi sur ce
que tu aimerais graphiquement parlant et pense formulaire car ce serait
comme si le mec sur papier cochait une case pour modifier tel ou tel
fiche, compte ...

Mais souviens toi de qqch de necessaire et pas obligatoirement respecté
... chacune de tes lignes doit etre unique dans son identification ...

C'est plus propre que de récuperer a l'arrache ...
J'espere que tu a a peu pres compris ce que j essaye d'expliquer mais sinon je restes dispo
--------------------------------------------------------------------------------------------------
         Il
vaut mieux poser une question et passer pour bête que le rester toute
sa vie
0
theseif Messages postés 62 Date d'inscription mercredi 29 août 2012 Statut Membre Dernière intervention 19 mai 2013
24 mai 2006 à 10:49
Voila comment je me suis organisé:


- dans une table inventaire j'enregistre tous les matériels avec un numéro d'ordre;
- dans une autre table j'enregistre les vérifications par l'intermédiaire du formulaire ci-dessus.
La date de la visite, l'organisme et le nom sont commun à toutes les fiches.
Par une boucle je liste les numéros d'ordre, je rempli le champs observations et je valide.
Le problème c'est quand j'envoie il enregistre que la dernière fiche. Qu'il y en ai une ou dix il n'y a que la dernière d'enregistrée.
Je ne sait pas comment enregistrer toutes les fiches validées.
0

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

Posez votre question
Teclis01 Messages postés 1423 Date d'inscription mardi 14 décembre 2004 Statut Membre Dernière intervention 29 décembre 2012 4
24 mai 2006 à 10:53
chaque champ doit etre unique pour son nom

genre echo '';

as tu essayé de faire un print_r($_POST); sur ta page de traitement ?

--------------------------------------------------------------------------------------------------
         Ilvaut
mieux poser une question et passer pour bête que le rester toutesa vie
0
theseif Messages postés 62 Date d'inscription mercredi 29 août 2012 Statut Membre Dernière intervention 19 mai 2013
24 mai 2006 à 11:40
Voila mon fichier, se sera peut-être plus simple pour moi :


<?php




include
"security.php"


;




//Protection de la page



$code_ets


=

$_GET


[

'code_ets'


];



$nom_ets


=

$_GET


[

'nom_ets'


];



$categorie


=

$_GET


[

'categorie'


];





$URL


=

$_SERVER


[

"SCRIPT_NAME"


];



$date_verif


=

""


;




if
(! empty
($_POST
[ "date_verif"
]))
$date_verif
=addslashes
($_POST
["date_verif"
]);
$n_ordre
= ""
;
if (!empty
($_POST
["n_ordre"
]))
$n_ordre
=addslashes
($_POST
["n_ordre"
]);
$categorie_mod
= ""
;
if (!empty
($_POST
["categorie_mod"
]))
$categorie_mod
=addslashes
($_POST
["categorie_mod"
]);
$observation
= ""
;
if (!empty
($_POST
["observation"
]))
$observation
=$_POST
["observation"
];
$organisme
= ""
;
if (!empty
($_POST
["organisme"
]))
$organisme
=$_POST
["organisme"
];
$nom_verif
= ""
;
if (!empty
($_POST
["nom_verif"
]))
$nom_verif
=$_POST
["nom_verif"
];

if($observation
)
{

// on ajoute la fiche
$table
= "verification"
;
$query
="INSERT INTO $table(nom_ets,code_ets,categorie,date_verif,n_ordre,observation,organisme,nom_verif)"
;
$query
.= " VALUES(' $nom_ets ','$code_ets','$categorie_mod','$date_verif','$n_ordre','$observation','$organisme','$nom_verif')"
;
$result
=mysql_query
($query
);

}

?>

<SCRIPT SRC= "calendar.js"></SCRIPT>
<script type ="text/javascript">

functionmet
()
{

(document
.getElementById
( 'tabl_ext'
).style
.display
= = 'none'
)
?
document
.getElementById
('tabl_ext'
).style
.display
='inline'
:
document
.getElementById
('tabl_ext'
).style
.display
= 'none'
;
}

</SCRIPT>

</HEAD>

<?php
$URL
. ="?numlien= 41&nom_ets="
. $nom_ets
. "&code_ets ="
.$code_ets
."&categorie = "
. $categorie
.""
;

echo"

$categorie' id = 'o_form' onClick= "met(this);">

&nbsp;<label for='o_form'>
</label>
<form method='post' action=' $URL '>" ;
?>

align ="center">

----

<table summary= "" border="0">
----

,
Date de la visite </td>
Organisme vérificateur,
<gras>Nom du vérificateur,
<gras>

----


<
a onclick ='CalendarInput(date);'>
<img src= '../calendar.gif' style='cursor:hand' width='18' height='14' border='0'></a>,
,
<gras>,




</td>
</tr>
<tr><td align ='center' class= 'separation_bd'> N°ordre</td><td align ='center' class= 'separation_bd'> Valider</td><td align ='left' class= 'separation_b'> &nbsp; Observations</td></tr>
<?

// on envoie la requête
$req
=mysql_query
("SELECT * FROM inventaire_ms WHERE categorie= '
$categorie ' AND code_ets =' $code_ets'")
ordie
(mysql_error
());

// on fait une boucle qui va faire un tour pour chaque enregistrement

while($data
= mysql_fetch_array
($req
))

{

// on affiche les informations de l'enregistrement en cours

echo<italique>" '>
<tr>
<td align = 'center' class= 'separation_d'>
. $data
['n_ordre'
]."' size ='10'></td>
<td align= 'center' class='separation_d'></td>
<td align='center'> </td></tr>"
;

}

echo "
<tr><td colspan ='6' align='center'>

</td></tr>
</table>
"
;

?>
</form>

<?mysql_close
();
?>
0
Teclis01 Messages postés 1423 Date d'inscription mardi 14 décembre 2004 Statut Membre Dernière intervention 29 décembre 2012 4
24 mai 2006 à 12:09
c'est ici ou ca ne va pas ...

les noms des varibla passé avec la methode get je suppose n ont pas
chacun des nom Unique et donc tu prend que le dernier donc il faut que
tu donnes un nom dynamique !

c'est ici que ca va pas je suppose ...
<td align= 'center' class='separation_d'>. $data
[ 'n_ordre'
]."' size ='10'></td>
<td align='center' class='separation_d'></td>
<td align='center'><italique></td></tr>"
;

--------------------------------------------------------------------------------------------------
         Ilvaut
mieux poser une question et passer pour bête que le rester toutesa vie
0
theseif Messages postés 62 Date d'inscription mercredi 29 août 2012 Statut Membre Dernière intervention 19 mai 2013
24 mai 2006 à 12:42
OK, mais comment donner un nom dynamique?


Le nombre de champs 'n_ordre'
est défini par le nombre d'enregistrements à inventaire, donc le nombre de champs 'observation' est identique, mais comment l'écrire.
0
Teclis01 Messages postés 1423 Date d'inscription mardi 14 décembre 2004 Statut Membre Dernière intervention 29 décembre 2012 4
24 mai 2006 à 13:21
qqch comme cela je suppose ...apres il faut faire pareil sur toute la ligne et tu as le choix ...

soit tu crée un string avec separateur genre : 'valid-'.
'"
.$data
['n_ordre'
]."'

(le sperateur est un tiret en rouge mais il se voit pas bcp )

<td align= 'center' class='separation_d'>. $data
[ 'n_ordre'
].<italique>"'

value ='"
.$data
['n_ordre'
]."' size='10'></td>


as tu compris le principe ?

--------------------------------------------------------------------------------------------------
         Ilvaut
mieux poser une question et passer pour bête que le rester toutesa vie
0
theseif Messages postés 62 Date d'inscription mercredi 29 août 2012 Statut Membre Dernière intervention 19 mai 2013
24 mai 2006 à 15:10
Sa, je ne connais pas et je sai pas ou le placer :
'valid-'.'"
.$data
['n_ordre'
]."'
Et si j'écris:
.$data
['observation'
]."' VALUE="" size='50'>
J'ai un message d'erreur :Notice: Undefined index: observation in c:\easyphp1-8\www\monsite\verification_ms3.php on line 119
0
Teclis01 Messages postés 1423 Date d'inscription mardi 14 décembre 2004 Statut Membre Dernière intervention 29 décembre 2012 4
24 mai 2006 à 17:15
c'est normal qu'il te dise cela tu as pas de champs nommé observation ...

ceci dit ce que je t ai filé c'est un name pour ton checkbox par exemple ainsi tu auras x chexkbox qui s apelleront

valid-(valeur de n_ordre) jusqu a valid-(x valeur de n_ordre)
et quand tu les recuperes c la meme choses sauf que :

$_GET[valid-$data[n_ordre]];

(syntaxe a verifier)
--------------------------------------------------------------------------------------------------
         Ilvaut
mieux poser une question et passer pour bête que le rester toutesa vie
0
Rejoignez-nous