Problème avec des conditions en PHP
9 messages
• Page 1 sur 1
- gcvoiron
- WRInaute occasionnel

- Messages: 494
- Inscription: 19 Oct 2005
Problème avec des conditions en PHP
Bonjour,
Sur mon site, les membres peuvent enregistrer 10 sites, pour les faire connaître aux autres membres.
J'ai une page avec le récapitulatif des sites, si le membre a enregistré 10 sites, un message "Vous ne pouvez plus mettre de site." apparait, et si il a mit moins de dix sites, un champ pour ajouter un site ainsi qu'un bouton "Ajouter le site" apparait. Ce bouton redirige le membre sur la page ajouter-site.php qui comporte le code suivant :
Où :
$a représente la page récapitulatif des sites
$nbsite représente le nombre de site qu'a le membre
$nnbsite représente le numéro du site à ajouter. Par exemple, si le membre a 5 sites, $nnbsite sera égal à 6.
idmembre est le numéro du membre
site est le site à ajouter
Donc je voudrai que si le membre a :
0 site, il ajoute donc le 1ier site, dans url
1 site, il ajoute donc le 2ème site dans url1 et ainsi de suite.
La requête $sdm sert à mettre dans la base de donnée le nombre de sites du membre.
J'ai 2 problème :
-Le site s'enregistre toujours dans "url"
-Dès que j'ajoute un site, $nbsite passe tout de suite à 10...
Pourriez-vous m'aider?
Merci.
Sur mon site, les membres peuvent enregistrer 10 sites, pour les faire connaître aux autres membres.
J'ai une page avec le récapitulatif des sites, si le membre a enregistré 10 sites, un message "Vous ne pouvez plus mettre de site." apparait, et si il a mit moins de dix sites, un champ pour ajouter un site ainsi qu'un bouton "Ajouter le site" apparait. Ce bouton redirige le membre sur la page ajouter-site.php qui comporte le code suivant :
- Code: Tout sélectionner
<?php
require('../prepend.inc.php');
$a = $_SERVER['HTTP_REFERER'];
$nnbsite = $_POST['nbsite'] + 1;
if ($nnbsite = 1) {
$sql =mysql_query("UPDATE demo_a_accounts SET url='".$_POST['site']."' WHERE id='".$_POST['idmembre']."'");
}
if ($nnbsite = 2) {
$sql =mysql_query("UPDATE demo_a_accounts SET url1='".$_POST['site']."' WHERE id='".$_POST['idmembre']."'");
}
if ($nnbsite = 3) {
$sql =mysql_query("UPDATE demo_a_accounts SET url2='".$_POST['site']."' WHERE id='".$_POST['idmembre']."'");
}
if ($nnbsite = 4) {
$sql =mysql_query("UPDATE demo_a_accounts SET url3='".$_POST['site']."' WHERE id='".$_POST['idmembre']."'");
}
if ($nnbsite = 5) {
$sql =mysql_query("UPDATE demo_a_accounts SET url4='".$_POST['site']."' WHERE id='".$_POST['idmembre']."'");
}
if ($nnbsite = 6) {
$sql =mysql_query("UPDATE demo_a_accounts SET url5='".$_POST['site']."' WHERE id='".$_POST['idmembre']."'");
}
if ($nnbsite = 7) {
$sql =mysql_query("UPDATE demo_a_accounts SET url6='".$_POST['site']."' WHERE id='".$_POST['idmembre']."'");
}
if ($nnbsite = 8) {
$sql =mysql_query("UPDATE demo_a_accounts SET url7='".$_POST['site']."' WHERE id='".$_POST['idmembre']."'");
}
if ($nnbsite = 9) {
$sql =mysql_query("UPDATE demo_a_accounts SET url8='".$_POST['site']."' WHERE id='".$_POST['idmembre']."'");
}
if ($nnbsite = 10) {
$sql =mysql_query("UPDATE demo_a_accounts SET url9='".$_POST['site']."' WHERE id='".$_POST['idmembre']."'");
}
$sdm =mysql_query("UPDATE demo_a_accounts SET nbsite='$nnbsite' WHERE id='".$_POST['idmembre']."'");
header("Location: $a");
?>
Où :
$a représente la page récapitulatif des sites
$nbsite représente le nombre de site qu'a le membre
$nnbsite représente le numéro du site à ajouter. Par exemple, si le membre a 5 sites, $nnbsite sera égal à 6.
idmembre est le numéro du membre
site est le site à ajouter
Donc je voudrai que si le membre a :
0 site, il ajoute donc le 1ier site, dans url
1 site, il ajoute donc le 2ème site dans url1 et ainsi de suite.
La requête $sdm sert à mettre dans la base de donnée le nombre de sites du membre.
J'ai 2 problème :
-Le site s'enregistre toujours dans "url"
-Dès que j'ajoute un site, $nbsite passe tout de suite à 10...
Pourriez-vous m'aider?
Merci.
- radiotrance
- WRInaute discret

- Messages: 157
- Inscription: 10 Juil 2005
déjà pour des conditions il faut des "==", le "=" sert pour l'affectation d'une valeur.
en gros quand tu fais ca:
$nnbsite prend la valeur 1.
en gros quand tu fais ca:
- Code: Tout sélectionner
if ($nnbsite = 1)
$nnbsite prend la valeur 1.
- radiotrance
- WRInaute discret

- Messages: 157
- Inscription: 10 Juil 2005
spout a écrit:tu as la fonction "switch()" pour ce genre de "if" imbriqués
-http://be.php.net/switch
+1 ca sera beaucoup mieux
- FlorentP
- WRInaute discret

- Messages: 145
- Inscription: 25 Juin 2005
Ou même, plus facila à relire :
$nnbsite= intval($nnbsite);
if ($nnbsite >= 1 && $nnbsite <= 10) {
$sql =mysql_query("UPDATE demo_a_accounts SET url$nnbsite='".$_POST['site']."' WHERE id='".$_POST['idmembre']."'");
}
plutot que 10 copier coller de presque la même requête...
$nnbsite= intval($nnbsite);
if ($nnbsite >= 1 && $nnbsite <= 10) {
$sql =mysql_query("UPDATE demo_a_accounts SET url$nnbsite='".$_POST['site']."' WHERE id='".$_POST['idmembre']."'");
}
plutot que 10 copier coller de presque la même requête...
- radiotrance
- WRInaute discret

- Messages: 157
- Inscription: 10 Juil 2005
+1 j'avais pas regardé son code en details, c'est clair que ca serai beaucoup mieux.
9 messages
• Page 1 sur 1
Lectures recommandées sur ce thème :
- Problème de conditions en PHP avec mysql_result
- PHP for à double conditions
- Aide pour des conditions php
- probleme de Conditions générales ??
- Problème url-rewriting multi-conditions
- probleme entre index.php centre.php et news.php
- [PHP] Problème avec une page profil.php
- AJax, php et xml, probleme de variable php
- [ Script PHP ] Problème de connexion (session php)
- Nouvelle version de GoogleStats : v1.1
- 3ème partie de l'article .htaccess : les réécritures conditionnelles
- Yahoo! Site Match
- Outil officiel de suppression de pages de l'index Google
- Statistiques des requêtes sur les moteurs en 2006
- Passage en euros des comptes Google AdSense
- 13% des internautes choisissent l'option Google : pages from the UK
- PR Weaver en test en avant-première
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 3 invités



