Visualizzazione risultati 1 fino 17 di 17

Discussione: funzione random

  1. #1
    Guest

    Predefinito funzione random

    mi spiego !! io utilizzo il forum phpbb 3.0.4 non fornito da altervista.

    vorrei creare una pagina boh.php che contenga i messaggi di una data categoria a random (quindi interrogando il database)!?


    del tipo

    il sito contiene 100 messaggi nella categoria annunci !? mettiamo

    io vorrei che tramite la pigiata di un link porto in home !? si possano visualizzare in un altra pagina. messaggiì/post sempre diversi..

    ho provato a cercare !! guide e tutorial le uniche cose che ho trovato che fanno la cosa che intendo io sono delle mod per wordpress..


    questo è quello che ho trovato !? se puo essere di aiuto nell'aiutarmi


    Codice:
    Prima di tutto create una nuova pagina template per il vostro blog: aprite un editor di testo qualunque (personalmente uso spesso Notepad di Windows) e scrivete il seguente codice:
    
    <?php
    /*
    Template Name: Post Casuale
    */
    ?>
    
    salvate la pagina chiamandola ad esempio postcasuale.php e successivamente aggiungete le seguenti righe di codice per caricare ad ogni chiamata un post random:
    
    <?php
    query_posts(array(’orderby’ => ‘rand’, ’showposts’ => 1));
    if (have_posts()) :
    while (have_posts()) : the_post(); ?>
    // WordPress loop, il tuo post random apparirà esattamente qui
    endwhile;
    endif; ?>
    
    A questo punto non dovrete fare altro che salvare nuovamente il file, upparlo via FTP nella cartella contenente il vostro tema, ed aggiungere un semplice widget nella sidebar (oppure direttamente nei file del template) che vi linki alla pagina postcasuale.php.
    Se provate a cliccare sul link appena creato, verrà caricato un post a caso tra quelli presenti in archivio. Un semplice hack che vi darà modo di rispolverare ogni articolo lasciato nel dimenticatoio ridandogli una seconda vita!

  2. #2
    Guest

    Predefinito

    direi che nn ti é tanto di aiuto, maeggi un po di php?
    potresti fare una semplice query che ti estrae uno o più dati random:
    Codice:
    SELECT *** FROM *** WHERE *** ORDER BY RAND() LIMIT ***
    se nn capisci ti faccio un esempio:
    Codice PHP:
    //connessione db

    $query = "SELECT dati_che_ti_interessano FROM tabella_del_db WHERE se_vuoi specificare_dei_casi_particolari ORDER BY RAND() LIMIT quanti_vuoi";
    $result = mysql_query($query);
    while (
    $array = mysql_fetch_array($result)) {

    echo
    "Titolo: ".$array[1]."<br />Testo: ".$array[2];

    }
    questo é un esmpio!

    PS: l'ho scritto sul momento quindi potrebbero esserci errori

  3. #3
    Guest

    Predefinito

    a dire il vero sono un neofita e a dirla tutta sn anche un auto didatta...

    ps: se non è troppo un disturbo !?

    non ho capito dove deve essere messo !? cioè devo creare un apagina che viene richiamata da un link o quello va impementato...

    PS:2 visto che mi hai deto che è possibile che ci siano dei problemi sai dove posso trovare del materiale dove poter rapportarlo,e comfrontarlo.. cosi da non farti fare tutto il lavoro e sentirlo anche un pò mia la funzione ??

    PS3 sei troppo la persona piu figa su questa terra


  4. #4
    Guest

    Predefinito

    scrivimi il nome e i campi del database che devi interrogare e il numero di articoli che vuoi estrarre.. sono tutti i dati che ho bisogno per scriverti il codice, che é piu o meno quello che ti ho giä postato...

    Scrivili qui...sai come entrare nel database no? strumenti->phpmyadmin per phpbb 3 dovrebbero esserci due tabelle topics e post, vabbé posta i campi di tutti e due e poi vediamo...

    ciao!

  5. #5
    Guest

    Predefinito

    io faccio di piu.. ti posto le immagini perche non ho mica capito tanto...

    scusa ma è da poco che ho rapporti con database e php... infatti cerco un aiuto,, piu tenico del mio che realizzi i miei capricci... nella gestione del forum e di altri progetti

    EDIT: cmq... io voglio che nella home home o in altro punto del portale ci sia un link che quando lo si pigia mi apre una pagina nuova con contenuto random ?? preso solo da una determinata categoria?? come spiegari meglio

    se ti puo essere di aiuto prova ad andare qui http://boztube.altervista.org/forum/arcade.php
    sotto la prima tabella ce un link con scritto mi sento forunato ecco io voglio fare una cosa del genere pero che prende i fati da annunci vendite o aquisti una cosa del genere

    EDIT 2: io forse ho capito quello che serve !??

    allora l'id del forum è 35 e la tabelle contengono piu o meno le stesse cose"?


    post

    http://spaceboz.altervista.org/host/...8726d/post.bmp

    topics

    http://spaceboz.altervista.org/host/...a8b/topics.bmp
    Ultima modifica di spaceboz : 14-01-2009 alle ore 12.40.56

  6. #6
    Guest

    Predefinito

    ok.. se devi estrarre un post a caso dal forum con id 35 prova a fare così (la tabella nei quali sono contenuti i post nn so come si chiama, quindi la marco con *tabella_post, devi sostituirci il nome della tabelle)
    Codice PHP:
    <?php

    //connessione db

    $query = "SELECT post_id,topic_id,post_subject,post_text FROM *tabella_post WHERE forum_id='35' ORDER BY RAND()";
    $result = mysql_query($query);
    $array = mysql_fetch_array($result);

    echo
    "<a href="forum/viewtopic.php?f=35&t=".$array[1]."#p".$array[0].">".$array[2]."</a><br />".$array[3];

    ?>
    questo dovrebbe darti in output qualcosa del genere (casuale):
    Codice HTML:
    <a href="http://boztube.altervista.org/forum/viewtopic.php?f=21&t=69#p76"></a><br />
    
    Una rete di computer è costituita da due o più calcolatori collegati tra loro al fine di scambiare dati e condividere risorse software e hardware. Secondo tale definizione, una rete può essere composta anche da due computer (mini rete)....
    *preso dal tuo forum

    il codice che ti ho dato devi scriverlo in una pagina con il nome che vuoi con estensione php tipo "pagina.php", che poi potrai linkare dal tuo forum...

    ricordati di sostituire *tabella_post con il nome della tabella del database, questa: http://spaceboz.altervista.org/host/...8726d/post.bmp
    e di aggiungere la connessione al database dove c'é "//connessione db"

    il codice l'ho scritto direttamente qui, quindi se ci sono errori posta, se nn sai cos'é la connessione al database php cercala nel forum e troverai sicuramente qualcosa...

    ciao!

  7. #7
    Guest

    Predefinito

    bene !? allora io ho cercato ma ho trovato post solo su errori di conessione al data base!? ora continuo a cercare?!

    EDIT: ho trovato un esempio di connessione al db googleando va bene??

    Codice:
    $connessione=mysql_connect($localhost,$xxxxxxx,$xxxxxxxx);
    $database=mysql_db_query($xxxxxxx," query ",$connessione);
    " query ",$connessione


    è questo pezzo che non mi sconquinfera perche in altri esempi mi pare che non ci sia!


    poi ho trovato anche quesesto

    Codice:
    <?
    
    mysql_connect ("localhost","username","password");
    mysql_select_db("nome_database");
    
    
    ?>
    mi da questo problema
    alla riga dodivi !!

    Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in /membri/boztube/forum/random.php on line 12


    Codice:
        <?php
    
    
    mysql_connect ("xxx","xxxx","xxxx");
    mysql_select_db("xxxxxx");
    
    
    $query = "SELECT post_id,topic_id,post_subject,post_text FROM phpbb_posts WHERE forum_id='35' ORDER BY RAND()";
    $result = mysql_query($query);
    $array = mysql_fetch_array($result);
    
       echo "<a href="forum/viewtopic.php?f=35&t=".$array[1]."#p".$array[0].">".$array[2]."</a><br />".$array[3];
    ?>

    Mi scuso per mille messaggi ma sonostato preso dall'enfasi chiedo perdono!!
    Ultima modifica di spaceboz : 14-01-2009 alle ore 17.38.10

  8. #8
    Guest

    Predefinito

    eccoti il codice completo, mi sono accorto che avevo fatto degli sbagli, corretti.. ora ho anche messo la conn al db, nn ricordo bene ma mi apre che su av era così, nn c'é bisogno di mettere la password, copia e incolla e vedi se ti da degli errori:
    Codice PHP:
    <?php

    $db_host
    = "localhost";
    $db_user = "spaceboz";
    $db_password = "";
    $db_name = "my_spaceboz";

    $db = mysql_connect($db_host, $db_user, $db_password);
    if (
    $db == FALSE)
    die (
    "Errore nella connessione al database.");

    mysql_select_db($db_name, $db)
    or die (
    "Errore nella selezione del database.");

    $query = "SELECT post_id,topic_id,post_subject,post_text FROM *tabella_post WHERE forum_id='35' ORDER BY RAND()";
    $result = mysql_query($query);
    $array = mysql_fetch_array($result);

    echo
    "<a href=\"forum/viewtopic.php?f=35&t=".$array[1]."#p".$array[0]."\">".$array[2]."</a><br />".$array[3];

    ?>

  9. #9
    Guest

    Predefinito

    non mi apre nulla !? cioe mi apre la pagina ma non si vede nulla!?

  10. #10
    Guest

    Predefinito

    si scusa, devi sostituire *tabella_post con il nome della tabella dei post...ciaao!

  11. #11
    Guest

    Predefinito

    Citazione Originalmente inviato da bluster Visualizza messaggio
    si scusa, devi sostituire *tabella_post con il nome della tabella dei post...ciaao!

    infatti fatto !!?? è stato quasi istintivo .. ma ho un problema mi fa venire fuori il leyaut dietro !? qui l'istinto non mi dice nulla !??


    poi notando nel giocare un pò con lo script._. che mi apre anche le risposte ai vari topic!? come posso fare far aprire solo i primi topic?


    GRAZIE MILLE PER LE SBATTITE CHE TI STAI FACENDO!! SE MAI CI SI INCONTRA TI OFFRO DA BERE
    Ultima modifica di spaceboz : 14-01-2009 alle ore 23.06.05

  12. #12
    Guest

    Predefinito

    allora funziona? coe ti da qualcosa tipo:
    Titolo
    Testo
    ??

    se funziona ok, era appunto quello che ti doveva dare, per la grafica bhe devi vedere tu come farla farla simile a uqella del forum se nn sai ancora l'html é molto facile ;)
    basta che ti impari html é modifichi lo script come vuoi inserendo i tuoi tag in questa stringa:
    Codice PHP:
    echo "<a href=\"forum/viewtopic.php?f=35&t=".$array[1]."#p".$array[0]."\">".$array[2]."</a><br />".$array[3];
    ciao!

  13. #13
    Guest

    Predefinito

    si ho gi auna idea !? la provo e poi ti sapro dire!?

    un'altra richiesta !? non posso fare si che la interrogazione del data base prende un link.. al posto che restituire una serie di fati grafici.. mi restituisca un link in modo che sia piu un redirect random?!

    però ora! provo agiocare un pò co l'html

  14. #14
    Guest

    Predefinito

    bhé si, é molto facile:
    Codice PHP:
    echo "<meta http-equiv=\"Refresh\" content=\"0; url=forum/viewtopic.php?f=35&t=".$array[1]."#p".$array[0]."\">";
    questo redirect punta subito alla pagina del forum (devi sostituirlo nell'altro codice), redirecta subito, se vuoi puoi impostare i secondi del redirect settandoli al posto di 0.. a questo punto é anche facile redirectare a un topic random, nn c'é bisogno di modficiare le qquery al db, basta redirectare così:
    Codice PHP:
    echo "<meta http-equiv=\"Refresh\" content=\"0; url=forum/viewtopic.php?f=35&t=".$array[1]."\">";
    ciao!
    Ultima modifica di bluster : 15-01-2009 alle ore 12.06.53

  15. #15
    Guest

    Predefinito

    mi da errore.. cio funzione molto bene ma il redirect mi dice che pa pagina non esiste sul server ti posto ilcodice magari ho sbagliato io
    Codice:
    <?php
    
    $db_host = "localhost"; 
    $db_user = ""; 
    $db_password = ""; 
    $db_name = "my_"; 
    
    $db = mysql_connect($db_host, $db_user, $db_password); 
    if ($db == FALSE) 
        die ("Errore nella connessione al database."); 
    
    mysql_select_db($db_name, $db) 
        or die ("Errore nella selezione del database."); 
    
    $query = "SELECT post_id,topic_id,post_subject,post_text FROM phpbb_posts WHERE forum_id='35' ORDER BY RAND()"; 
    $result = mysql_query($query); 
    $array = mysql_fetch_array($result); 
    
    echo "<meta http-equiv=\"Refresh\" content=\"5; url=forum/viewtopic.php?f=35&t=".$array[1]."\">";  
    
    
    
    ?>

  16. #16
    Guest

    Predefinito

    prova con:
    Codice PHP:
    echo "<meta http-equiv=\"Refresh\" content=\"5; url=http://spaceboz.altervista.org/forum/viewtopic.php?f=35&t=".$array[1]."\"> Sarai re-indirizzato tra 5 secondi";
    Prova così e dimmi se funziona...

    PS: ti ho aggiunto "Sarai re-indirizzato tra 5 secondi" é buona cosa avvisare l'utente del redirect, se lo fai attendere...

    ciao!

  17. #17
    Guest

    Predefinito

    SEI TROPPO LA PERSONA PIU GANZA DI STO MONDO !!


    funziona Benissimo !!


    ultima cosa, e poi mi metto a costruirti la statua !! dove posso trovare del materiale per modificare la codiciata? adesempio invere di mettere la scritta attendi 5 secondi mettere una barra di carimanto o altre cose??!!


    però non voglio stare qui a pesarti ancora sul groppone a ste cose ci posso.. spero .. pensare io.....


    ANCORA UN GRAZIE GRANDE GRANDE


    e rimane sotto inteso che se ci si becca ti offro da bere??!! io sono di ciniselllo balsamo milano

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •