Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 18 su 18

Discussione: notizie correlate

  1. #11
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    777
    forse ho capito
    il tuo campo dove hai tag non si chiama tag ma metatag
    quindi
    dovrebbe essere cosi
    Codice PHP:

    $tagdefinitivi
    implode("%' OR c_art_articolo.metatag LIKE '%"$tag_def); 

  2. #12
    Utente di HTML.it
    Registrato dal
    Mar 2001
    Messaggi
    2,043
    Questa modifica l'avevo fatta ieri sera dopo aver scritto l'ultimo post, ma il problema era rimasto, ora provo a fare altre modifiche.

  3. #13
    Utente di HTML.it
    Registrato dal
    Mar 2001
    Messaggi
    2,043
    Ho trovato il problema, se l'articolo ha solo una parola tag gli articoli correlati si vedono, ma se ha più parole tag gli articoli correlati non li visualizza, quindi credo che il problema sia qui:

    $tag_def = explode("@@",$metatag);
    if(trim($metatag) != ""){
    $tagdefinitivi= implode("%' OR c_art_articolo.metatag LIKE '%", $tag_def);
    $tagdefinitivi2 = "'%".$tagdefinitivi."%'";
    }

  4. #14
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    777
    forse nel modo di scrivere nell'implode il punto non viene considerato come carattere normale ma parte integrante del codice php...tieni presente quando si fa
    .funzione.?

    con quel implode in pratica costruisco la select cosi
    where metatag like tag1 or metatag like tag2...

    altrimenti per toglierti il pensiero usa foreach
    in questo modo

    Codice PHP:
    if(trim($tag) != ""){
    foreach(
    $tag_def as $tagdefinitivi){
    $query_15Select bla bla from bla bla WHERE c_art_articolo.metatag LIKE $tagdefinitivi";
    .......
    }


  5. #15
    Utente di HTML.it
    Registrato dal
    Mar 2001
    Messaggi
    2,043
    ora col foreach mi dice che il campo soin non esiste, e certo soin non'è un campo ma una tag

    errore Unknown column 'soin' in 'where clause'



    Codice PHP:
    $metatag $row['metatag'];

    // scompatto il campo metatag con implode in modo che in ogni posizione dell'array possieda un metatag dell'articolo
    $tag_def explode("@@",$metatag);

    // con trim levo gli spazi ed escludo i record con il campo metatag vuoto
    if(trim($metatag) != ""){
    foreach(
    $tag_def as $tagdefinitivi){

    echo 
    $metatag;
    echo 
    "
    "
    ;
    echo 
    $tag_def;
    echo 
    "
    "
    ;
    echo 
    $tagdefinitivi;
    echo 
    "
    "
    ;
    echo 
    $tagdefinitivi2;
    echo 
    "
    "
    ;

    $sql_articolomarca "SELECT c_art_articolo.*, c_art_categoria.*, c_art_sottocategoria.* 

                    FROM c_art_articolo 
                
                    INNER JOIN c_art_categoria
                    ON c_art_articolo.id_art_categoria = c_art_categoria.id_art_categoria 
                    
                    INNER JOIN c_art_sottocategoria
                    ON c_art_articolo.id_art_sottocategoria = c_art_sottocategoria.id_art_sottocategoria 
                    
                    WHERE c_art_articolo.metatag LIKE 
    $tagdefinitivi AND c_art_articolo.id_art_articolo != $id

                    ORDER BY c_art_articolo.id_art_articolo DESC LIMIT 11"
    ;  
    $result_articolomarca mysql_query($sql_articolomarca,$conn) or die ("errore ".mysql_error());
    $row_articolomarca mysql_num_rows($result_articolomarca);
    $row2_articolomarca=mysql_fetch_array($result_articolomarca);

    }


  6. #16
    Utente di HTML.it
    Registrato dal
    Mar 2001
    Messaggi
    2,043
    se all'explode gli levo @@ funziona, però mi da questo errore:

    Warning: explode() [function.explode]: Empty delimiter in /web/htdocs/www.sito.it/home/live/include_elenco_articoli_correlati1.php on line 6

    Warning: implode() [function.implode]: Invalid arguments passed in /web/htdocs/www.sito.it/home/live/include_elenco_articoli_correlati1.php on line 11
    SHINE CARESSE l orèal l oreal paris gloss labbra gloss l’oreal gloss labbra shine caresse shine caresse make up novità soin


    '%%'

  7. #17
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    777
    nella query $tagdefinitivi deve stare tra apici

  8. #18
    Utente di HTML.it
    Registrato dal
    Mar 2001
    Messaggi
    2,043
    HO RISOLTOOOO
    ho fatto dei controlli e ora pare che funzioniiii!!!!

    ho modificato il codice in questo modo

    Codice PHP:
    $metatag $row['metatag'];


    $tag_def explode("@@",$metatag);


    if(
    trim($metatag) != ""){
    $campi=explode("," ,$metatag);;

    while (list(, 
    $valore) = each ($campi)) {

    $sql_articolomarca "SELECT c_art_articolo.*, c_art_categoria.*, c_art_sottocategoria.* 

                    FROM c_art_articolo 
                
                    INNER JOIN c_art_categoria
                    ON c_art_articolo.id_art_categoria = c_art_categoria.id_art_categoria 
                    
                    INNER JOIN c_art_sottocategoria
                    ON c_art_articolo.id_art_sottocategoria = c_art_sottocategoria.id_art_sottocategoria 
                    
                    WHERE c_art_articolo.id_art_articolo != 
    $id AND metatag LIKE '%$valore%' 

                    ORDER BY c_art_articolo.id_art_articolo DESC LIMIT 11"
    ;  
    $result_articolomarca mysql_query($sql_articolomarca,$conn) or die ("errore ".mysql_error());
    $row_articolomarca mysql_num_rows($result_articolomarca);
    $row2_articolomarca=mysql_fetch_array($result_articolomarca);

    }

    }

    if (
    $row_articolomarca>1){ 

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 © 2025 vBulletin Solutions, Inc. All rights reserved.