Un peu d'aide svp :)

Résolu
Edouard73 Messages postés 139 Date d'inscription   Statut Membre Dernière intervention   -  
Dalida Messages postés 6728 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

j'ai réaliser un annuair de membre de guilde en html/php avec une base de donnée en mysql.

Je travaile sur une seconde version, mais j'aimerai apporté quelque améliorations tend sur l'acces directe au fiche des membres.

Voici le lien : https://actualite-premium.fr/

J'ai passé un moment à trouver sur le web un moyen de faire, mais la je seche.

En faite pour l'instant lorsque je veux qu'une des fiches de membre donne plus de détaille, je suis obliger de rentrer le numéro du dossier puis generer (via bouton submit)

Maintenant, j'aimerai avoir deux solution.

la premiere est que je ne rentre pas le numero du membre dans la zone texte, mais qu'en cliquant avec la sourie sur un des numero, celui ci s'enregitre dans la zone text pour me permetre de faire submit ensuite.

la deuxieme serai d' acceder à la fiche en cliquant directement sur le numéro souhaité. (en gros lorsque que clique sur le liens ça produit le submit donnant instruction à la base de donnée d'afficher la fiche demandé)

J'avais trouvé un exemple pour le premier exemple, mais je ne le retrouve plus *pleure*.

Si vous pourrivez me donner des exemples qui pourrait me permetre de faire l'une de ces deux façon ça serai super sympa. Si vous me donné des exemples en javascript soyé sympa d'expliqué je ne suis pas encore un pro dans ce domaine... et je pense que pour arrivé à ce que je cherche je dois y passer...

Merci d'avance pour l'aide.

7 réponses

Didoch54000 Messages postés 308 Date d'inscription   Statut Membre Dernière intervention   26
 
Salut,
En gros tu veut fair un lien lors que tu clique sur 1(par exemple) cela te donne le détail de ton personnage ,sans passer par generer ?
C'est ca ?
0
Edouard73 Messages postés 139 Date d'inscription   Statut Membre Dernière intervention   11
 
oui pour la seconde solution. j'ai essayé de trouver des exemples avec href et onclick mais je n'ai rien trouvé pour l'instant de concluant.

ou alors pour la premier solution 1(par exemple) s'affiche dans la zone texte au dessus :)
0
Dalida Messages postés 6728 Date d'inscription   Statut Contributeur Dernière intervention   922
 
salut,

il faut ajouter un lien sur le numéro :
<table width="100%" border="1">
  <tr> 
    <td colspan="3" bgcolor="#CCCCCC">
		<strong><a href="https://actualite-premium.fr/">1</a> - KallananFell1710200522:29  - BSI_MAJOR</strong></td>
  	</tr>
  <tr> 
</table>

PS: ton titre est d'un originalité certaine et pour l'orthographe, utilise FireFox et ajoute le dictionnaire Fr, ça évitera déjà le plus gros !
-;o)
0
Edouard73 Messages postés 139 Date d'inscription   Statut Membre Dernière intervention   11
 
j'ai essayé cette solution.

Elle ne marche pas car "1" est un élément qui vient de la base de donné. chaque fiches ne sont pas chacune une "page html". c'est pour cela que je dois dans la zone texte mettre 1 puis generer, pour que la base de donnée me réstitue les informations que je lui ai demandé de faire apparaitre.

Dans ton exemple ça donne ça : https://actualite-premium.fr/ le liens m'envoie vers la page ou la base de donné génere les informations demandé, mais dans ce cas rien ne se produit (puis que je n'ai pas fais d'appele)
0
Dalida Messages postés 6728 Date d'inscription   Statut Contributeur Dernière intervention   922
 
ah oui m***e !
ton formulaire est en 'POST' !

il faut modifier "https://actualite-premium.fr/" pour traiter 'GET' au lieu de 'POST' après tes liens fonctionneront.

ou alors il faut mettre un formulaire pour chaque ligne mais ce serait du délire.
déjà que tu crées un tableau pour chaque ligne au lieu de créer un ligne à chaque fois mais dans le même tableau, si tu ajoutes des formulaires ce sera pire.
0
Edouard73 Messages postés 139 Date d'inscription   Statut Membre Dernière intervention   11
 
Pour 1 formulaire = chaque ligne j'y ai pensé... mais bon comme tu dis ça sera trés lourd.

Pour les lignes je n'en ai fais qu'une... apres c'est le résultat de la base de donné qui en crée plusieurs et qui fait que toi tu en vois plusieurs sur le code soure

voila le code :

<form method="post" action="https://actualite-premium.fr/" enctype="multipart/form-data">
Selectionner <strong>le numéro</strong> de dossier à afficher:
<input type="text" name="ndd"/>
<input type="submit" value="GENERER"/> <input type="reset" value="EFFACER"/>
</form>
<?php
mysql_select_db("local.host");

$reponse = mysql_query("SELECT * FROM membre ORDER BY ndd");

while ($donnees = mysql_fetch_array($reponse) )
{
?>
<br/>
<table width="100%" border="1">
<tr>
<td colspan="3" bgcolor="#CCCCCC">
<strong><?php echo $donnees['ndd']; ?></a> - <?php echo $donnees['prenom']; echo $donnees['nom']; echo $donnees['matricule']; ?> - <?php echo $donnees['grade']; ?></strong></td>
</tr>
<tr>
</table>
0
Didoch54000 Messages postés 308 Date d'inscription   Statut Membre Dernière intervention   26 > Edouard73 Messages postés 139 Date d'inscription   Statut Membre Dernière intervention  
 
Comme ca en passant :
SELECT * FROM membre ORDER BY ndd pourquoi tu n'utilise pas le mots clef where ...like dans ta requete

Select *
From membre
Where membre_id like "valeur de la variable passée en post via le formualire"
Ce qui t'évitera de faire un machine a gaz !
0

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

Posez votre question
Didoch54000 Messages postés 308 Date d'inscription   Statut Membre Dernière intervention   26
 
tu dis :
alors pour la premier solution 1(par exemple) s'affiche dans la zone texte au dessus :)

Cela ne me parait pas réellement logique d'uitlisation .
En ce qui concerne la deuxieme tu peut faire justement en javascript un onclick (regarde bien les possibilité tu peut gerer un maximum de chose) ou faire un lien en passant ton ID personnage en hidden avec un formaulaire et le recuperer dans une variable post ou get .
Bon courage.
0
Dalida Messages postés 6728 Date d'inscription   Statut Contributeur Dernière intervention   922
 
pour "https://actualite-premium.fr/" tu peux essayer :
<!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">

	<head>

		<title>Titre de la page</title>

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

		<style type="text/css">

		</style>

	</head>
	
	<body>
    <p>Dossier des membres avancée (V1.0) <a href="https://okpc.fr/">C-IMP</a></p>
    
<?php
	mysql_select_db("local.host");

	$reponse = mysql_query('SELECT ndd, prenom, nom, matricule, grade FROM membre ORDER BY ndd');

?>
	<table>
<?php
	while ($donnees = mysql_fetch_array($reponse) )
	{
?>
	<tr>
		<td><?php echo('<a href="https://actualite-premium.fr/$donnees['ndd'].'">'.$donnees['ndd'].'</a>'); ?></td>
	    <td><?php echo($donnees['prenom']); ?></td>
	    <td><?php echo($donnees['nom']); ?></td>
	    <td><?php echo($donnees['matricule']); ?></td>
	    <td><?php echo($donnees['grade']); ?></td>
	</tr>
<?php
	}
?>
	</table>

	</body>
</html>

le code devrait être plus propre et plus valide.

pour "https://actualite-premium.fr/" :
<!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">

	<head>

		<title>Titre de la page</title>

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

		<style type="text/css">

		</style>

	</head>

	<body>
    <p>Dossier des membres avancée (V1.0) <a href="https://okpc.fr/">C-IMP</a></p>

<?php
	mysql_select_db("local.host");

	if (isset($_GET['ndd']) && !empty($_GET['ndd']))
	{
	    $reponse = mysql_query('SELECT ndd, prenom, nom, matricule, grade FROM membre WHERE ndd="'.$_GET['ndd'].'" LIMIT 1');
	    $donnees = mysql_fetch_array($reponse)
	}
?>
		<p><?php echo($donnees['ndd']); ?></p>
	    <p><?php echo($donnees['prenom']); ?></p>
	    <p><?php echo($donnees['nom']); ?></p>
	    <p><?php echo($donnees['matricule']); ?></p>
	    <p><?php echo($donnees['grade']); ?></td>
<?php
	else
	{
		$reponse = mysql_query('SELECT ndd, prenom, nom, matricule, grade FROM membre ORDER BY ndd');

?>
	<table>
<?php
		while ($donnees = mysql_fetch_array($reponse) )
		{
?>
	<tr>
		<td><?php echo('<a href="https://actualite-premium.fr/$donnees['ndd'].'">'.$donnees['ndd'].'</a>'); ?></td>
	    <td><?php echo($donnees['prenom']); ?></td>
	    <td><?php echo($donnees['nom']); ?></td>
	    <td><?php echo($donnees['matricule']); ?></td>
	    <td><?php echo($donnees['grade']); ?></td>
	</tr>
<?php
		}
	}
?>
	</table>

	</body>
</html>

pour le moment, ne t'occupe pas de la mise en page !
ça fait du code en plus qui n'est pas utile puisque le but du jeu est avant tout de faire tourner la machine !
le "joli" tu verras plus tard !
-;o)
0
Edouard73 Messages postés 139 Date d'inscription   Statut Membre Dernière intervention   11
 
Parfait tes codes.

Pour le second j'ai eu un bug : Parse error: parse error, unexpected '}' in /var/www/data/woo/C/C/8/A/CC8AA43K/CIMP/Others/PHPTEST/index2.php on line 18 (j'ai bo eu cherché pourquoi } fesai buger le code... mais pas trouvé

j'ai modifié à ma sauce (j'espere que tu m'en voudras pas :)

voila ce que j'ai fais :

<?php
mysql_select_db("local.host");


$reponse = mysql_query('SELECT ndd, prenom, nom, matricule, grade FROM membre WHERE ndd="'.$_GET['ndd'].'" LIMIT 1');
$donnees = mysql_fetch_array($reponse)

?>
<p><?php echo($donnees['ndd']); ?></p>
<p><?php echo($donnees['prenom']); ?></p>
<p><?php echo($donnees['nom']); ?></p>
<p><?php echo($donnees['matricule']); ?></p>
<p><?php echo($donnees['grade']); ?></td>
</table>

et le résultat est exactement ce que je voulais comme solution 2.

https://actualite-premium.fr/

Bon bha merci pour l'aide, plus qu'a mettre en forme est le tour sera joué :)
0
Dalida Messages postés 6728 Date d'inscription   Statut Contributeur Dernière intervention   922
 
bravo à toi !
souvent il suffit juste de mettre le pied à l'étrier !

pour l'erreur, je ne vois pas mais c'est juste une accolade en trop ou en moins.

le code que je t'ai filé est en XHTML Strict. c'est exigeant mais c'est le meilleur !
pour la mise en page, fais tout en css ,ce sera plus propre.
et pense à valider ton code. ça peut paraitre superflu mais c'est la base pour avoir une page bien construite !

pense à cocher "Résolu" !

à plus
0