Problème avec des conditions en PHP

Discussion dans 'Développement d'un site Web ou d'une appli mobile' créé par gcvoiron, 30 Juin 2006.

  1. gcvoiron
    gcvoiron WRInaute occasionnel
    Inscrit:
    19 Octobre 2005
    Messages:
    459
    J'aime reçus:
    0
    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 :

    Code:
    <?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.
     
  2. radiotrance
    radiotrance WRInaute discret
    Inscrit:
    10 Juillet 2005
    Messages:
    124
    J'aime reçus:
    0
    déjà pour des conditions il faut des "==", le "=" sert pour l'affectation d'une valeur.

    en gros quand tu fais ca:
    Code:
    if ($nnbsite = 1)
    $nnbsite prend la valeur 1.
     
  3. gcvoiron
    gcvoiron WRInaute occasionnel
    Inscrit:
    19 Octobre 2005
    Messages:
    459
    J'aime reçus:
    0
    Ok, merci pour cettre précision.
     
  4. gcvoiron
    gcvoiron WRInaute occasionnel
    Inscrit:
    19 Octobre 2005
    Messages:
    459
    J'aime reçus:
    0
    Et ben c'est bon, sa marche parfaitement!
    Merci radiotrance!
     
  5. spout
    spout WRInaute accro
    Inscrit:
    14 Mai 2003
    Messages:
    9 161
    J'aime reçus:
    338
    tu as la fonction "switch()" pour ce genre de "if" imbriqués
    -http://be.php.net/switch
     
  6. radiotrance
    radiotrance WRInaute discret
    Inscrit:
    10 Juillet 2005
    Messages:
    124
    J'aime reçus:
    0
    +1 ca sera beaucoup mieux :)
     
  7. FlorentP
    FlorentP WRInaute discret
    Inscrit:
    25 Juin 2005
    Messages:
    131
    J'aime reçus:
    0
    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...
     
  8. karak
    karak WRInaute occasionnel
    Inscrit:
    7 Août 2005
    Messages:
    315
    J'aime reçus:
    0
    Je te conseille egalement la proposition de FlorentP.

    C'est plus court et plus pratique qu'un switch ou que des if.

    En plus si tu dois changer le code, cela sera encore plus rapide.
     
  9. radiotrance
    radiotrance WRInaute discret
    Inscrit:
    10 Juillet 2005
    Messages:
    124
    J'aime reçus:
    0
    +1 j'avais pas regardé son code en details, c'est clair que ca serai beaucoup mieux.
     
Chargement...
Similar Threads - Problème conditions PHP Forum Date
Problème de conditions en PHP avec mysql_result Développement d'un site Web ou d'une appli mobile 5 Janvier 2006
Problème url-rewriting multi-conditions URL Rewriting et .htaccess 20 Juin 2012
Problème url-rewriting multi-conditions Développement d'un site Web ou d'une appli mobile 5 Octobre 2011
problème de redirection non souhaitée Administration d'un site Web 28 Avril 2022
Problème d'indexation Produits Prestashop Crawl et indexation Google, sitemaps 28 Avril 2022
Problème d'affichage des campagnes Google Ads dans un tableau de bord Data Studio AdWords 26 Avril 2022
Problème de vitesse d'affichage des pages sur Analytics Google Analytics 26 Avril 2022
Problème : Google Crawl et Index des pages en No Index et bloqué par le robot.txt Crawl et indexation Google, sitemaps 26 Avril 2022
Problème avec GA4 : nb de visiteurs temps réel et par jour Google Analytics 19 Avril 2022
Problème indexation pages précises en React.js Débuter en référencement 19 Avril 2022
Problème de référencement Demandes d'avis et de conseils sur vos sites 8 Avril 2022
Problème adsence : Annonces ne s'affichent plus AdSense 10 Mars 2022
problèmes procédures stockées Administration d'un site Web 9 Mars 2022
Problème récupération fichier vps Développement d'un site Web ou d'une appli mobile 5 Mars 2022
Problème config postfix. Administration d'un site Web 5 Mars 2022
Search Console Problème d'indexation Crawl et indexation Google, sitemaps 24 Février 2022
Problème d'url canonique Problèmes de référencement spécifiques à vos sites 22 Février 2022
Problème indexation car élément "url" manquant sur logo Crawl et indexation Google, sitemaps 11 Février 2022
Problème avec un menu en ajax via jquery Problèmes de référencement spécifiques à vos sites 6 Février 2022
Problème url rewriting et redirection URL Rewriting et .htaccess 4 Février 2022