Affichage PHP/Mysql

Signaler
-
 meriem2012 -
Bonjour,
je debute en programmation alors soyez indulgent avec moi
Voila mon probleme j'ai deux tableaux avec des liens que j'affiche a partir d'une BD , je souhaiterai pouvoir par exemple:
cliquer sur lien tableau 1 il m'affiche des résultats (a partir de la BD)
cliquer sur un lien lien du tableau 2 m'affiche des résultats
et quand je clique sur les deux liens il m'affichent que les résultats en commun

les resultats seront affichés dans un frame

est ce que c'est possible de faire ça avec du PHP ou bien faut il faire ca avec du JS??

2 réponses

Messages postés
493
Date d'inscription
jeudi 7 juillet 2005
Statut
Membre
Dernière intervention
24 mai 2017
3
Salut, tu dois reprendre à zéro.
La méthode la plus intéressante est de faire cela en Ajax avec des requêtes asynchrone.
Donc, tu dois avoir un menu :


    <li>[# Lien 1]</li>
    <li>[# Lien 1]</li>
    <li>[# Lien 1]</li>



En jquery et en orienté object, j'espère ne pas être trop violant avec toi ;) :
/** 
 * @package     mon site
 * @subpackage	public/js
 */
(function($) {
$.menu = {
getData: function(id) {
$.ajax({
url: 'chemin-vers-mon-script-php/get-data.php/',
type: 'POST',
dataType: 'json',
data: 'id='+id,
success: function(json) {
if(json.ok) {
$('tbody#data').html(json.data);
}
}
});
}
}
})(jQuery);


Par la suite en PHP, tu fais un retour json avec un array php.
Donc, dans le fichier get-data.php, tu retournes les données par rapport à l'id.

<?php
$id = $_POST['id'];
*...

if ($id === 'lien1') {
    $reponse = 'valeur';
} elseif ($id === 'lien2') {
    $reponse = 'valeur';
} else {
    $reponse = 'valeur';
}
*...

echo json_encode(array('data' => $reponse));


Oublier les frames, il y a quelque années ok mais là, on est en 2013 (de plus c'est bien plus simple).

Voici la doc pour le jQuery.

stéph
<html>
<head>
<title>modification </title>
</head>

<?php
//connection au serveur:
$cnx = mysql_connect( "localhost", "root", "" ) ;

//sélection de la base de données:
$db = mysql_select_db( "tp1" ) ;

//récupération de la variable d'URL,
//qui va nous permettre de savoir quel enregistrement modifier
$nom='';
if (isset($_GET['nom'])) {
$nom = $_GET["nom"] ;
}
//requête SQL:
$sql "SELECT * FROM infractant WHERE nom '$nom'" ;

//exécution de la requête:
$requete = mysql_query( $sql, $cnx ) or die($sql . mysql_error());

//affichage des données:
if( $result = mysql_fetch_object( $requete )) {
?>
<html>

<form name="modification2" action="modification3.php" method="POST">

nom,
nom) ;?>">,

----

prenom,
prenom) ;?>">,

----

adresse,
adresse) ;?>">,

----

date de naissence,
date_n) ;?>">,

----

numero de permis,
n_permis) ;?>">,

----


</form></html>
<?php
}//fin if
?>


</html>
***************************************
le problème est:
il n'affiche rien telque n'existe pas des erreurs