Pourquoi seuls les résultats de la première requête de base de données sont-ils affichés et les fonctionnalités de la deuxième requête sont-elles ignorées ?
P粉696891871
P粉696891871 2023-09-06 22:32:01
0
1
459

Le résultat suivant affiche les résultats de la première requête, mais pas de la deuxième requête. Lorsque j'interroge sans utiliser de fonction, cela fonctionne bien.

function builtFooter($catactive, $catlink)
{
    global $conn;
    $sql = "SELECT catid, catname_de AS name, catlink as link, extern, extlink FROM categories WHERE catactive=? AND catlink!=? ORDER BY catsort";
    $stmt = $conn->prepare($sql);
    $stmt->bind_param("ss", $catactive, $catlink);
    $stmt->execute();
    $result = $stmt->get_result();
    while ($cat = $result->fetch_assoc()) {
        $resArr[] = $cat;
        echo '

' . $cat['name'] . '

'; $cities = "SELECT COUNT(a.ad_id) AS ANZ,a.region, b.city, b.citylink FROM ads a, neueorte b WHERE a.zeigen=? AND a.gesperrt=? AND FIND_IN_SET(?, a.portale) AND a.catid=? AND b.po_id=a.region GROUP BY a.region ORDER BY ANZ DESC LIMIT 0,50"; $stmt = $conn->prepare($cities); $zeigen = 'ja'; $gesperrt = 'no'; $category = $cat['catid']; $stmt->bind_param("ssss", $zeigen, $gesperrt, $portalnumber, $category); $stmt->execute(); $result = $stmt->get_result(); while ($city = $result->fetch_assoc()) { $resArr[] = $city; echo ' ' . $city['city'] . '
'; } } } builtFooter('yes', 'markt');
P粉696891871
P粉696891871

répondre à tous(1)
P粉193307465

Ces requêtes fonctionnent toutes correctement et j'obtiens les résultats souhaités :

$catactive = 'yes';
$catlink = 'markt';
$sql = "SELECT catid, catname_de AS name, catlink as link, extern, extlink FROM categories WHERE catactive=? AND catlink!=? ORDER BY catsort";
        $stmt = $conn->prepare($sql); 
        $stmt->bind_param("ss", $catactive, $catlink);
        $stmt->execute();
        $result = $stmt->get_result();
        while ($cat = $result->fetch_assoc()) {    
            $resArr[] = $cat;
           echo '<h3><a href="'.$cat['link'].'" title="'.$cat['name'].' bei $portalname">'.$cat['name'].'</a></h3>';
        
        $cities = "SELECT COUNT(a.ad_id) AS ANZ,a.region, b.city, b.citylink FROM ads a, neueorte b WHERE a.zeigen=? AND a.gesperrt=? AND FIND_IN_SET(?, a.portale) AND a.catid=? AND b.po_id=a.region GROUP BY a.region ORDER BY ANZ DESC LIMIT 0,50";
        $stmt = $conn->prepare($cities); 
        $zeigen = 'ja';
        $gesperrt = 'no';
        $category = $cat['catid'];
        $stmt->bind_param("ssss", $zeigen, $gesperrt, $portalnumber, $category);
        $stmt->execute();
        $r = $stmt->get_result();
        while ($city = $r->fetch_assoc()) {    
            $resArr[] = $city;
            echo' '.$city['city'].' <br />';
        }
       }

Mais lorsque je construis une fonction, je n'arrive pas à obtenir le résultat de la deuxième requête :

function builtFooter($catactive,$catlink){
        global $conn;
            $sql = "SELECT catid, catname_de AS name, catlink as link, extern, extlink FROM categories WHERE catactive=? AND catlink!=? ORDER BY catsort";
            $stmt = $conn->prepare($sql); 
            $stmt->bind_param("ss", $catactive, $catlink);
            $stmt->execute();
            $result = $stmt->get_result();
            while ($cat = $result->fetch_assoc()) {    
                $resArr[] = $cat;
               echo '<h3><a href="/sexkontakte/'.$cat['link'].'" title="'.$cat['name'].' bei $portalname">'.$cat['name'].'</a></h3>';
            
            $cities = "SELECT COUNT(a.ad_id) AS ANZ,a.region, b.city, b.citylink FROM ads a, neueorte b WHERE a.zeigen=? AND a.gesperrt=? AND FIND_IN_SET(?, a.portale) AND a.catid=? AND b.po_id=a.region GROUP BY a.region ORDER BY ANZ DESC LIMIT 0,50";
            $stmt = $conn->prepare($cities); 
            $zeigen = 'ja';
            $gesperrt = 'no';
            $category = $cat['catid'];
            $stmt->bind_param("ssss", $zeigen, $gesperrt, $portalnumber, $category);
            $stmt->execute();
            $r = $stmt->get_result();
            while ($city = $r->fetch_assoc()) {    
                $resArr[] = $city;
                echo' '.$city['city'].' <br />';
    }
    }
       }
       builtFooter('yes','markt');

J'ai les catégories de tableaux, les annonces et les neueorte. Je souhaite créer des liens de pied de page, je souhaite donc avoir les catégories sous forme de balises h3, puis les regrouper par ville où se trouve la ville où l'annonce est placée. J'espère que je fais les choses correctement, je suis nouveau sur cette page.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!