[WP.org] diriger requete sql et php vers une page spécifique

  • Avatar de Inconnu

    Bonjour, j utilise php dans une page wordpress, voici la requête qui fonctionne très bien

    
    <form action="" method="GET">
    <input id="min" name="min" type="text" />
    <input id="max" name="max" type="text" />
    <input name="Valider" type="submit" /></form>
    
    [insert_php]
    
    $datedeb=$_GET['min'];
    $list1 = explode("/",$datedeb);
    $jodeb=$list1[0];
    $modeb=$list1[1];
    $andeb=$list1[2];
    $min=$andeb."-".$modeb."-".$jodeb." ".'00'.":".'00'.":".'00';
    
    $datefin=$_GET['max'];
    $list2 = explode("/",$datefin);
    $jofin=$list2[0];
    $mofin=$list2[1];
    $anfin=$list2[2];
    $max=$anfin."-".$mofin."-".$jofin." ".'23'.":".'59'.":".'59';
    
    global $wpdb;
    
    $sql1 = $wpdb->get_results("SELECT DISTINCT(p.id),p.post_date FROM $wpdb->posts  p
    left JOIN $wpdb->postmeta  m ON m.post_id = p.id
    where p.post_type='wpshop_shop_order'
    and p.post_date > '$min' 
    and p.post_date < '$max'
    ");
    foreach($sql1 as $result){
    $post_id=$result->id; 
    $edit_last = get_post_meta( $post_id,"_order_postmeta",true);
    $num_cde = $edit_last['order_key'];
    $date_cde = $edit_last['order_date'];
    $cle = (array_keys($edit_last['order_items']));
    for($i = 0;$i <= count($cle); $i++)
    {
    $cle1 = $cle[$i] ;
    $prixu = $edit_last['order_items'][$cle1][item_pu_ttc];
    $nomprod = $edit_last['order_items'][$cle1][item_name];
    $qteprod = $edit_last['order_items'][$cle1][item_qty];
    $wpdb->insert('mod42_transf3',array('id_cl3'=>$post_id,'prod_cl'=>$nomprod,'qte_cl'=>$qteprod,'prix_cl'=>$prixu),
    array('%s','%s','%s','%s'));
    $wpdb->insert('mod42_transf4',array('id_cl4'=>$post_id,'qte_cl4'=>$qteprod,'prix_tot'=>$prixu*$qteprod),
    array('%s','%s','%s'));
    }
    
    $edit_last1 = get_post_meta( $post_id,"_order_info",true);
    $cle2 = (array_keys($edit_last1['billing']));
    for($ii = 1;$ii <= count($cle2); $ii++)
    {
    $cle3 = $cle2[$ii] ;
    $nom =  $edit_last1[billing][$cle3][address_last_name];
    $pnom = $edit_last1[billing][$cle3][address_first_name];
    $city = $edit_last1[billing][$cle3][city];
    $wpdb->insert('mod42_transf2',array('id_cl2'=>$post_id,'nom_cl'=>$nom,'pnom_cl'=>$pnom,'ville_cl'=>$city),array('%s','%s','%s','%s'));
    }
    }
    
    if ($min <> 0) {
    
    $sql2 = $wpdb->get_results("SELECT id_cl3,nom_cl,pnom_cl,ville_cl,prod_cl,qte_cl,prix_cl
    from mod42_transf2, mod42_transf3
    where mod42_transf2.id_cl2 = mod42_transf3.id_cl3
    order by nom_cl");
    
    echo $datedeb;
    echo "<a> et le </a>";
    echo $datefin;
    echo "<table class="texte" width="100%" border="0" bordercolor="#000066" cellspacing="0" align="center" >";
    echo "<tr>";
    echo "<td align="left" bgcolor="#DBE8E8">Prenom - Nom</td>";
    echo "<td align="left" bgcolor="#DBE8E8">Ville</td>";
    echo "<td align="left" bgcolor="#DBE8E8">Produits</td>";
    echo "<td align="left" bgcolor="#DBE8E8">Qte</td>";
    echo "<td align="left" bgcolor="#DBE8E8">Prix Unit.</td>";
    echo "<td align="left" bgcolor="#DBE8E8">Total Com.</td>";
    
    $idcl = "";
    
    foreach($sql2 as $result1){
    echo "<tr>";
    if ($result1->id_cl3 <>  $idcl ) {
        echo "<td align="left">$result1->pnom_cl - $result1->nom_cl</td>";
        echo "<td align="left">$result1->ville_cl</td>";
        echo "<td align="left">$result1->prod_cl</td>";
        echo "<td align="left">$result1->qte_cl</td>";
        echo "<td align="left">$result1->prix_cl</td>";
         $sql3 = $wpdb->get_results("SELECT id_cl4,SUM(prix_tot) as prixtot
        from mod42_transf4
         where mod42_transf4.id_cl4 = $result1->id_cl3
         group by id_cl4");
        foreach($sql3 as $result2){
          $conv = number_format($result2->prixtot,2,',','');
          echo "<td align="left">$conv</td>";
         }
    }else{
          echo "<td align="left"></td>";
          echo "<td align="left"></td>";
          echo "<td align="left">$result1->prod_cl</td>";
          echo "<td align="left">$result1->qte_cl</td>";
          echo "<td align="left">$result1->prix_cl</td>";
          echo "<td align="left">  </td>";
        }
    
        $idcl = $result1->id_cl3;
    }
    
    }
    echo "</table>";
    $sql0 = $wpdb->query("delete from mod42_transf2");
    $sql01 = $wpdb->query("delete from mod42_transf3");
    $sql01 = $wpdb->query("delete from mod42_transf4");
    
    [/insert_php]
    

    je voudrais que mon résultat soit affiché sur une page blanche de mon choix sans le thème pour impression

  • Avatar de Inconnu

    Bonjour. Votre site fonctionne sous WordPress, mais n’est pas hébergé par WordPress.com. Vous n’êtes donc pas au bon endroit. Veuillez poser votre question sur les forums appropriés à : https://wpfr.net/support/

    Vous vous trouvez actuellement dans les forums pour sites hébergés par WordPress.com. Nos réponses ne seront donc pas pertinentes à votre situation, car les deux variantes de WordPress ne fonctionnent pas de la même façon. Merci et j’espère que vous trouverez bientôt réponse à votre question.

    Complément d’information : https://fr.forums.wordpress.com/topic/important-ce-forum-est-reserve-aux-sites-heberges-par-wordpresscom?replies=1

  • Le sujet ‘[WP.org] diriger requete sql et php vers une page spécifique’ est fermé aux nouvelles réponses.