Affichage de variables - PHP - Programmation
Marsh Posté le 17-11-2008 à 15:54:46
alors déjà, il faut penser à sécuriser tes requêtes ... ici tu fais une belle injection SQL.
Si ID n'est qu'un nombre, alors tu peux faire ça :
Code :
|
D'autre part, peut-on mettre le trait d'union dans un nom de variable ?
Enfin, juste après ton fetch_array, mets ceci :
print_r($donnees);
et tu verras ce que tu as récolté.
Dernière remarque : le SELECT * est-il nécessaire ? (si tu n'as besopin que du nom et de l'email, un SELECT nom, email FROM ... me parait plus approprié.
EDIT : dans ce que j'ai mis, si ton ID vaut zéro, $donnees sera un tableau vide.
Marsh Posté le 17-11-2008 à 17:01:22
Merci pour ta réponse,
malheureusement je suis débutant en php, et j'ai essayé avec le code que tu as mis, mais le lien n'affiche pas le "usernameaffilie".
Voici le code:
Code :
|
Excusez-moi, en fait tout marche, merci !!!
Simplement, lorsqu'il n'y a pas d' "idaffilie" dans le lien de ma page, en reprenant l'exemple si mon lien est : "www.site.fr/presentation.php", que dois-je ajouter pour avoir un "usernameaffilie" par défaut??
Merci de m'aider
Marsh Posté le 17-11-2008 à 23:20:57
Hello,
dans ce cas, soit tu as un compte lambda qui vaut pour tout le monde, soit pas de compte, auquel cas tu ne prends pas en compte cette donnée ...
Concrètement :
1. Si tu as un compte lambda d'ID 1 :
Code :
|
(il y a juste le 1 qui remplace le 0 à la fin de ligne, c'est la valeur par défaut qui sera initialisée dans $id si $_GET['...'] n'existe pas)
2. Si tu n'as pas de compte lambda (donc pas de système d'affiliation si pas de sponsor)
Code :
|
Marsh Posté le 18-11-2008 à 22:30:26
Merci encore !!
Tout fonctionne!
Marsh Posté le 19-11-2008 à 18:27:28
D'ailleurs on pourrait même optimiser ça ...
au lieu de :
Code :
|
tu pourrais utiliser ça :
Code :
|
Marsh Posté le 19-11-2008 à 23:07:52
Excellent !
Je te remercie pour ton aide, c'est nikel !
Marsh Posté le 20-11-2008 à 10:15:37
NewsletTux a écrit : alors déjà, il faut penser à sécuriser tes requêtes ... ici tu fais une belle injection SQL.
|
c'est une blague?
Si oui, elle est particulièrement mauvaise.
Marsh Posté le 20-11-2008 à 10:22:53
NewsletTux a écrit : D'ailleurs on pourrait même optimiser ça ... au lieu de :
tu pourrais utiliser ça :
|
...ou alors utiliser un semblant de séparation de la présentation et de la logique au lieu de rendre ça encore plus mélangé et moins lisible pour le plaisir d'écrire 3 caractères de moins.
Marsh Posté le 20-11-2008 à 19:18:50
Vraiment ?
Mais alors qu'est ce que tu proposes pour simplifier et sécuriser tout ça ?
Marsh Posté le 20-11-2008 à 19:30:43
Bah déjà pour simplifier, tout séparer :
Code :
|
Marsh Posté le 20-11-2008 à 19:38:51
Generation-Web a écrit : Vraiment ? |
Sécuriser l'input vers la base de données, c'est le boulot...de la librairrie d'accès à la base de données. Dans ton cas, soit tu peux utiliser les fonctions mysqli() ou PDOet donc il faut te diriger vers les requêtes préparées, soit ce n'est pas le cas, et il faut utiliser mysql_real_escape_string.
Concernant son "optimisation", elle est juste ridicule. Aucun gain en performance, ni en lisibilité, le seul gain est en termes de caractères à taper, ce qui n'a aucun intérêt.
Si tu veux partir dans l'esprit "séparation des couches", renseigne-toi sur MVC, par exemple.
...et Luc@s, dire "tout séparer" et mettre de l'affichage et une fonction d'accès à la base dans le même script de 10 lignes c'est vraiment très très très mauvais.
Marsh Posté le 20-11-2008 à 20:13:43
oui mais je fais pas lui faire 3 fichiers différents avec des templates quand même
Marsh Posté le 20-11-2008 à 20:15:11
en attendant ton truc est moins lisible que l'original, alors autant garder le premier
Marsh Posté le 17-11-2008 à 15:51:30
Bonjour,
Voila j'ai crée une table "affilies" dans MySQL en rajoutant des champs sur le nom d'utilisateur, l'e-mail et l'id de chaque affilié, et je voudrais savoir comment mettre un lien du style www.site.fr/12000 (12000 correspondant à l'id de l'affilié) avec à l'intérieur de la page les données de l'affilié tels que son email, son prénom et son lien.
J'ai testé un code :
(ex : le lien de ma page est www.site.fr/presentation.php?id-affilie=12000)
Code : PHP
Remarque : le "username-affilie" représente le nom d'utilisateur pour lequel "id-affilie=12000".
Malheureusement, j'obtient toujours le même 'username-affilie' quelque soit la valeur de l'id-affilie que je met dans le lien de ma page.
L'erreur devrait se situer dans mysql_query.
Quelqu'un peut-il m'aider à corriger ce problème ?
Message édité par Generation-Web le 26-11-2008 à 00:06:44
---------------
Site web d'informations sur internet