Visualizzazione dei risultati da 1 a 5 su 5

Discussione: Doppio ciclo while

Visualizzazione discussione

  1. #3
    Utente di HTML.it
    Registrato dal
    Feb 2014
    residenza
    Voltati
    Messaggi
    913
    Codice PHP:
    $country $country != $appoggio['country'] ? $appoggio['country'] : $country

    Se $country è diverso $appoggio[country] allora usa quest'ultimo, se sono uguali usa $country (che è uguale a $appoggio[country])
    Tanto vale fare così:
    Codice PHP:
    $country $appoggio['country']; 
    Comunque puoi provare così:
    Codice PHP:
    <?php

    mysql_connect
    ("xxx","xxx","xxx") or die(mysql_error());
    mysql_select_db("xxx") or die(mysql_error());
    $data mysql_query("SELECT * FROM tabella WHERE continent='nordamerica' ORDER BY country ASC") or die(mysql_error()); 
    $countries = [];
    while (
    $appoggiomysql_fetch_array($data)) {
        if (!
    array_key_exists($countries$appoggio["country"]) $countries[$appoggio["country"]] = [];
        
    $countries[$appoggio["country"]][$appoggio["id"]] = $appoggio["name"];
    }
    echo 
    "<ul class='continent'>";
    foreach (
    $countries as $country => $names) {
        
    ?>
        <li>
            <p class='nomepaese'><?php echo $country?></p>
            <ul>
            <?php foreach ($names as $id => $name) { ?>
                <li>
                    <a href='index.php/en/abc/bb/<?php echo $id?>'>
                        <?php echo $name?>
                    </a>
                </li>
            <?php ?>
            </ul>
        </li>
        <?php
    }
    echo 
    "</ul>";

    ?>
    Poi... mysql è deprecata da php 5.5, è meglio se usi mysqli:
    Codice PHP:
    <?php

    $mysqli 
    = new mysqli("localhost""username""password""database");
    $data mysqli->query("SELECT * FROM tabella WHERE continent='nordamerica' ORDER BY country ASC"); 
    $countries = [];
    while (
    $appoggio$data->fetch_array()) {
        if (!
    array_key_exists($countries$appoggio["country"]) $countries[$appoggio["country"]] = [];
        
    $countries[$appoggio["country"]][$appoggio["id"]] = $appoggio["name"];
    }
    echo 
    "<ul class='continent'>";
    foreach (
    $countries as $country => $names) {
        
    ?>
        <li>
            <p class='nomepaese'><?php echo $country?></p>
            <ul>
            <?php foreach ($names as $id => $name) { ?>
                <li>
                    <a href='index.php/en/abc/bb/<?php echo $id?>'>
                        <?php echo $name?>
                    </a>
                </li>
            <?php ?>
            </ul>
        </li>
        <?php
    }
    echo 
    "</ul>";

    ?>
    PS
    Il codice che hai postato avrebbe generato un html non valido (un <p> come figlio diretto di un <ul> )

    PPS
    Quando posti del codice sul forum, mettolo tra i tag [html], [php] o [code] (i tasti "<>", "php" e "#" nell'editor in modalità avanzata)

    PPPS
    Quanto mi piacciono le risposte lunghe
    Ultima modifica di tampertools; 23-10-2014 a 17:52
    No

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.