PHP : Des liens en forme page.php?id=1

nik029 Messages postés 281 Date d'inscription   Statut Membre Dernière intervention   -  
nik029 Messages postés 281 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je suis en train de créer un site et j'aimerais que, lorsque depuis mon panneau d'administration je clique sur le bouton "modifier le profil" d'un membre, on m'envoie sur la page de modification de son profil (avec pleins de ligne texte contenant ces informations).

Pour cela, il faudrais que la page de modifications soit sous la forme modif-profil.php?id=#
(le # représentant le numéro id qui est donné à un utilisateur dans ma base de donnée PHPMyAdmin).

J'ai fouillé sur internet mais en vain, je ne comprends pas comme cela doit se créer.

Aidez moi. Merci d'avance.

A voir également:

12 réponses

ReDLoG
 
Bonsoir,
Dans ton panneau d'admin, tu dois lister les membres à partir d'une requête SQL ou bien un champ texte dans lequel tu rentres le nom (ou le pseudo) du membre afin de trouver son id dans la table puis ton script renvoi vers la page web modif-profil.php?id=102 (102 c'est pour l'exemple). Cette page contient ton script PHP qui à partir de l'id 102 va faire une requête SQL pour lister toutes les infos à afficher et modifier concernant le membre 102 (nom, prénom, pseudo, adresse, email, etc...) dans les champs d'un formulaire (sers-toi de l'exemple de présentation des éléments de PhpMyAdmin).
La ou les modifications faites, ton formulaire (en méthode POST) repointe sur le même fichier (modif-profil.php) en faisant un update de la table et du profil du membre.
C'était un peu long à développer, j'ai peut-être même (involontairement) omis des précisions, mais bon en gros c'est la démarche à adopter, tu pourras affiner au fur et à mesure de ton avancement dans le(s) script(s).
1
Utilisateur anonyme
 
salut salut !

pour envoyer via la méthode get, soit avec une adresse du typer

index?id=5


il te suffit de mettre cette adresse dans le lien :
<a href="index.php?id=5">modifier</a>

, et que la page réceptrice récupère l'id via
$_get['id']


bne aprem !
naga
0
nik029 Messages postés 281 Date d'inscription   Statut Membre Dernière intervention   44
 
Merci. Et comment je dois faire pour que la page réceptrice récupère l'id via $_get ? (car tu m'as mis un morceau de code, je sais pas quoi mettre autour -je veux dire que si je met tel quel le code il va pas comprendre-) ? Car je veux que les pages de modifications se "crée" toute seule. Je crée une structure et, lorsque je cliquerais sur "modifier", toutes les informations du membre apparaissent dans une ligne texte, peut importante le membre que j'ai choisis (je sais pas si je suis très clair..).
0
Utilisateur anonyme
 
ah et bien ta page php sera comme ca :
<?php 
$variable = $_get['id'];
echo $variable;
?>

ou simplement

<?php 
echo $_get['id'];
?>


donc là ca affichera l'id sur ta page.

En fait, $_get est un tableau de variable, par exemple si ta page tu mets :
index.php?id=5&page=boubou

tu aura de dispo

 $_get['id'];
 $_get['page'];


pour vérifier si la valeur existe :
if( isset($_get['id']) && !empty($_get['id']))   //si elle existe et est pas vide
{
//ton code ici si il y a un id
}
else
{
//et ici s'il y a rien
}


je te conseil de faire le tuto sur le site du zéro car là tu vas galérer tout seul ^^
0

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

Posez votre question
nik029 Messages postés 281 Date d'inscription   Statut Membre Dernière intervention   44
 
J'ai le tuto du site du zéro à côté de moi mais il ne correspond pas exactement à ce que je cherche. Merci de ton aide, je vais essayer sa et je te dis si ça marche ou pas (enfin, j'espère que sa va marcher ^^).
0
Utilisateur anonyme
 
ca marche, mais quel est le tuto que tu as suivi ?
celui ci esst plutot bien foutu je trouve :
https://openclassrooms.com/fr/courses/918836-concevez-votre-site-web-avec-php-et-mysql/912799-transmettez-des-donnees-avec-lurl

tu pourra même prendre l'exemple =)
0
nik029 Messages postés 281 Date d'inscription   Statut Membre Dernière intervention   44
 
0
Utilisateur anonyme
 
non le tiens est un niveau au dessus de toi, il traite aussi des transmission d'info via pdo (une classe de connexion à une bdd en gros mais bon je vais pas déblatérer ^^).
Le miens te correspond +, il te montrera la base des passages de variable d'une page à l'autre ;)
0
nik029 Messages postés 281 Date d'inscription   Statut Membre Dernière intervention   44
 
Je crois que je viens de réussir avec les requêtes préparées. Je suis en train de faire plusieurs tests.
0
Utilisateur anonyme
 
ok bah bne chance ! je sais pas si je pourrai trop t'aider encore, j'ai profité d'un peu de temps libre pour passer sur ccm =)

mais tiens moi au courant !
bne apem
0
nik029 Messages postés 281 Date d'inscription   Statut Membre Dernière intervention   44
 
Merci beaucoup en tout cas ! ;-)
Pour ceux qui ne savent pas comment faire, voici le code :

<?php
try
{
    $pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
    $bdd = new PDO('mysql:host=localhost;dbname=_nomdevotredb_', '_identifiant_, '_mot_de_passe_', $pdo_options);
    
    $req = $bdd->prepare('SELECT _nom_des_choses_a_afficher FROM utilisateurs WHERE id = ?');
    $req->execute(array($_GET['id']));
    
    echo '<ul>';
    while ($donnees = $req->fetch())
    {
         echo '<li>' . $donnees['_nom_d'une_des_chose_a_afficher'] . ' ' . $donnees['_nom_d'une_des_chose_a_afficher'] . '</li>';
    }
    echo '</ul>';
    
    $req->closeCursor();
}
catch(Exception $e)
{
    die('Erreur : '.$e->getMessage());
}
?>
0
nik029 Messages postés 281 Date d'inscription   Statut Membre Dernière intervention   44
 
D'accord. Merci de ces précisions. ;)
0