Reload la table à chaque insertion [Résolu]

EL.marwaa123 99 Messages postés jeudi 24 avril 2014Date d'inscription 7 juin 2014 Dernière intervention - 7 mai 2014 à 11:31 - Dernière réponse : EL.marwaa123 99 Messages postés jeudi 24 avril 2014Date d'inscription 7 juin 2014 Dernière intervention
- 7 mai 2014 à 22:33
Bonjour,
j'utilise un table dans ma page qui affiche la table d'une base de donnée à chaque insertion mais le probleme c'est que la modifacation n'apparait qu'aprés l'ajout d'une autre.je veux à chaque insertion la nouvelle ligne apparait.
voila le code:
<table border="2" id="tab">
         <fieldset style="color:blue;font-weight:bold;">les profs crées:</fieldset>
                <tr class="ligne">
   <th>id</th>
                 <th>login</th>
                 <th>password</th>
                </tr>
 <?php 
 mysql_connect("localhost","root","123") or die(mysql_error());
 mysql_select_db("basepfe")or die('Pas de Base de donn\351');
 $sql= mysql_query("select * from profs");
  while($result=mysql_fetch_array($sql))
                                                {
             
                                                    $n =$result['idP'];
                                                    $no = $result['login'];
                                                    $pr = $result['pass'];
                                                   
?>
                <tr>
                    <th><?php echo $n; ?></th>
                    <th><?php echo $no; ?></th>
                    <th><?php echo $pr; ?></th>
                </tr>
   
 <?php
 }
echo "<bold><script> location.reload();</bold>" ?> 
            </table>
</div>

pouvez-vous m'aider svp?merci d'avance
Afficher la suite 

Votre réponse

15 réponses

EnguerrandP 295 Messages postés vendredi 26 avril 2013Date d'inscription 15 juillet 2015 Dernière intervention - 7 mai 2014 à 11:58
0
Merci
Moi j'ai fais comme sa:
function Insert_Line()
{		
	var V_I_New_Date = $("#I_New_Date").val();
	var V_S_New_Request = $("#S_New_Request").val();
	var V_I_New_TimeSpent = $("#I_New_TimeSpent").val();
	var V_TA_New_Description = $("#TA_New_Description").val();
	var V_I_New_Worker = $("#WorkerIdSelSave").val();
		
	//Recover the Primary key value
	$.ajax
	({
		type: 'POST',
		data: {
				Jour : V_I_New_Date, 
				Request : V_S_New_Request,
				TimeSpent : V_I_New_TimeSpent,
				Description : V_TA_New_Description,
				Worker : V_I_New_Worker
			  },
		async: false,
		url:'Insert_Line_BDD_Daily_Timer.ajx.php', 
		error: function(error){alert("Erreur : " + error);}
	});
	
	$("#S_New_Request").val('');
	$("#I_New_TimeSpent").val('');
	$("#TA_New_Description").val('');
	
	var TDW = "#MyTabPHP";
	var IDfromDateText = $("#DaySelSave").val();
	var NamefromWorker = $("#WorkerSelSave").val();	
	var IDfromWorker = $("#WorkerIdSelSave").val();
	EraseDiv(TDW);
	CreateDiv(IDfromDateText,IDfromWorker,NamefromWorker);
	
};
function EraseDiv(TDW)
{
	$(TDW).remove();
}

function CreateDiv(idJour,idWorker,nameWorker)
{
	$.ajax
	({
		type: 'POST',
		data: {V_I_New_Date : idJour, V_S_New_Worker : idWorker,ID_I_New_Date : idJour+'_'},
		async: false,
		url:'PHP_Tab_Day.ajx.php', 
		success:function(data) { $("#Tab_PHP").append(data)},
		error: function(error){alert("Erreur : " + error);}	
	}); 

	$("#I_New_Date").val(idJour);
	$("#I_New_Worker").val(nameWorker);	
	$("#DaySelSave").val(idJour);
	$("#WorkerSelSave").val(nameWorker);	
	$("#WorkerIdSelSave").val(idWorker);
};

Voila.
Commenter la réponse de EnguerrandP
EL.marwaa123 99 Messages postés jeudi 24 avril 2014Date d'inscription 7 juin 2014 Dernière intervention - 7 mai 2014 à 12:34
0
Merci
j'ai rien compris dans ce code :( :( il y a pas autre solution que ce code? soit une fonction prédifinis ou autre ? merci
EnguerrandP 295 Messages postés vendredi 26 avril 2013Date d'inscription 15 juillet 2015 Dernière intervention - 7 mai 2014 à 12:57
Il y a surement d'autre façon , plus simple plus propre mais je n'ai que sa a te proposer (étant un grand débutant dans se domaine très vaste).
EL.marwaa123 99 Messages postés jeudi 24 avril 2014Date d'inscription 7 juin 2014 Dernière intervention - 7 mai 2014 à 13:03
merci pour votre réponse pouvez vous me proposez des tutorials? mercii
EnguerrandP 295 Messages postés vendredi 26 avril 2013Date d'inscription 15 juillet 2015 Dernière intervention - 7 mai 2014 à 13:13
regarde sur openclassroom.
sinon le principe du code que j'ai poster est assez simple il y a une fonction ajax qui crée mon tableau une fois que le filtre sur la BDD et sélectionner, la tu fais ton insert se qui va appeler une fonction qui supprime ton tableau et une qui crée de nouveau ton tableau.
Bonne chance
EL.marwaa123 99 Messages postés jeudi 24 avril 2014Date d'inscription 7 juin 2014 Dernière intervention - 7 mai 2014 à 13:24
ok merci bcp
Commenter la réponse de EL.marwaa123
jordane45 21447 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 23 juin 2018 Dernière intervention - 7 mai 2014 à 13:59
0
Merci
Bonjour,

Tu postes ta question dans la section Javascript... hors tu ne nous montres que du PHP..

Bon..si j'ai bien compris ta demande c'est :
Affichage des nouvelles valeurs saisies sur ta page ?

Par contre.. tu ne veux QUE les dernières valeurs saisies ou TOUTES les valeurs de ta table ?

En fonction de ta réponse... soit je déplace ton sujet dans la rubrique PHP (qui je pense suffira à résoudre ton souci) soit je la laisse en JAVASCRIPT.


@EnguerrandP :
une fonction qui supprime ton tableau et une qui crée de nouveau ton tableau.
Aucun intérêt de faire ça.
Le plus simple est de mettre à jour le tableau existant (pas besoin de le supprimer avant).






EnguerrandP 295 Messages postés vendredi 26 avril 2013Date d'inscription 15 juillet 2015 Dernière intervention - 7 mai 2014 à 14:20
On fais sa comment ???
jordane45 21447 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 23 juin 2018 Dernière intervention - 7 mai 2014 à 15:36
Tout dépend ce que tu entends par "supprimer".
Mais sinon .. comment... et bien en utilisant le DOM pour manipuler le document HTML en javascript et de l'AJAX pour requêter en arrière plan.
EnguerrandP 295 Messages postés vendredi 26 avril 2013Date d'inscription 15 juillet 2015 Dernière intervention - 7 mai 2014 à 15:51
Se que j'ai fais tu pense que sa va causer des soucis ?
jordane45 21447 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 23 juin 2018 Dernière intervention - 7 mai 2014 à 16:13
Des soucis. non.. mais ce n'est pas le plus propre.
Mais bon... on est pas là pour discuter de TON code mais de celui de mounana199
Commenter la réponse de jordane45
EL.marwaa123 99 Messages postés jeudi 24 avril 2014Date d'inscription 7 juin 2014 Dernière intervention - 7 mai 2014 à 14:42
0
Merci
je veux pas supprimer la table je veux à chaque insertion à partir du formulaire la nouvelle ligne inséré soit apparait dans la table , j'ai postulé ici parce que j'ai utilisé la fonction
location.reload()
et je pense que javascript a une solution.
merciiii
jordane45 21447 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 23 juin 2018 Dernière intervention - 7 mai 2014 à 15:15
Je ne comprend pas bien ta demande....

Tu nous parles de Table... ( les tables de ta base de données) ou de Tableau ( tableau html) ??

j'ai postulé ici parce que j'ai utilisé la fonction
location.reload()

Quel est le rapport ? Pour une petite ligne de code javascript tu postes dans cette Section alors que tu en as 30 autres en Php .... ??!!


je pense que javascript a une solution.
Ben .. comme je te l'ai dit... TOUT DEPEND DE CE QUE TU SOUHAITES FAIRE.
Pour l'instant ta question n'est pas claire du tout !


Peut -être as tu oublié de nous mettre le reste de ton code... ce qui pourrait nous permettre de mieux comprendre ce que tu souhaites faire.
EL.marwaa123 99 Messages postés jeudi 24 avril 2014Date d'inscription 7 juin 2014 Dernière intervention - 7 mai 2014 à 21:44
nn c'est la table de ma base de données, j'ai un formulaire pour créer les profs et j'ai mis une table qui affiche les enregistrements.
mon probleme c'est que quand je click sur créer :la nouvelle enregistrement n'apparait que lorsque j'ajoute une autre. clair mnt?
voila le code complet:

<div class="login-form">

<form class="form login-form form-horizontal" id="1" action='pag1.php' method="POST">
<div class="container box" style="padding-right: 100px; margin-top: 50px; border: 1px solid #ccc; background: #fff;">
<div class="box-shadow-big">
<div class="span4">
<div class="form-group">
<label>Login :</label>
<input class="form-control" name="login" type="text" />
</div>
<div class="form-group">
<label>Mot de passe :</label>
<input id="mdp1" name="mdp" type="password" />
<div id="verifMdpLength"></div>
</div>

</div>
<div class="row" style="padding: 20px; ">

<input style="margin-left: 20px !important;margin-top: 30px;" value="Creer" class="btn sub btn-black " type="submit" name="submit" />
</div>
<div class="form-group">
<table>
<tr>
<td><input style="display:inline-block;" value="supprimer un prof" class="btn sub btn-black " type="submit" name="supprimer" onclick="form()" /></td>
<td><input style="display:inline-block;" value="modifer les infos" class="btn sub btn-black " type="submit" name="modif" /></div></td></table>
</div>
</div>
</form>
</div>

<table border="2" id="tab">
<fieldset style="color:blue;font-weight:bold;">les profs crées:</fieldset>
<tr class="ligne">
<th>id</th>
<th>login</th>
<th>password</th>
</tr>
<?php
mysql_connect("localhost","root","123") or die(mysql_error());
mysql_select_db("basepfe")or die('Pas de Base de donn\351');
$sql= mysql_query("select * from profs");
while($result=mysql_fetch_array($sql))
{
$n = $result['idP'];
$no = $result['login'];
$pr = $result['pass'];

?>
<tr>
<th><?php echo $n; ?></th>
<th><?php echo $no; ?></th>
<th><?php echo $pr; ?></th>
</tr>
<?php }
echo "<script> location.reload(); <script> "?>

</table>


<?php
$name=$_POST['login'];
$pass=$_POST['mdp'];
if (isset($_POST['submit'])){

if($name&&$pass)
{
mysql_connect("localhost","root","123") or die(mysql_error());
mysql_select_db("basepfe")or die('Pas de Base de donn\351');
$sql=mysql_query("INSERT INTO profs VALUES ('','$name','$pass')");
echo "<script> alert('la compte a été bien créer')</script>";
mysql_close();
}

else echo "<script>alert('Remplir tous les champs svp vous plait!')</script>";
}

?>
:( :( j'ai tout en php,et je postule sur javascript à cause de ' location.reload()' vraiment je sais pas si cest la bonne forums ou nn :( :(
EL.marwaa123 99 Messages postés jeudi 24 avril 2014Date d'inscription 7 juin 2014 Dernière intervention - 7 mai 2014 à 22:33
mon probleme est resolu merci bcp j'ai juste changer l'ordre des codes php mercii bcppp
Commenter la réponse de EL.marwaa123

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.