Navigazione

    Privacy - Termini e condizioni
    © 2020 Search On Media Group S.r.l.
    • Registrati
    • Accedi
    • CATEGORIES
    • Discussioni
    • Non lette
    • Recenti
    • Hashtags
    • Popolari
    • Utenti
    • Stream
    • Interest
    • Categories
    1. Home
    2. Categorie
    3. Coding e Sistemistica
    4. PHP
    5. Php random link
    Questa discussione è stata cancellata. Solo gli utenti con diritti di gestione possono vederla.
    • C
      colvi User Attivo • ultima modifica di

      Php random link

      Salve ragazzi, sto cercando di realizzare con php una funzione random per dei link partner da visualizzare in un punto del sito.
      Per ogni esposizione vorrei far visualizzare 10 link, ho trovato in rete questo script ma francamente non sto riuscendo a personalizzarlo.

        <? 
      

      //set the urls
      $urls = array ("google.com" ,"hotmail.com" ,"hawkee.com" );

      //set the text links
      $text = array ("Google" ,"Hotmail" ,"Hawkee"); srand(time());

      //set the number in (rand()%3); for however many links there are
      $random = (rand()%3);
      echp ("<a href = "$urls[$random]">$text[$random]</a>");

      ?>

      0 Miglior Risposta Ringrazia Cita Rispondi

        1 Risposta Ultima Risposta
      • S
        senamion User Attivo • ultima modifica di
        
        <?
         
        $urls = array("Google" => "google.com",
        "giorgiotave" => "giorgiotave.it",
        "altro" => "altro.it",
        ...
        );
         
        $newArray = array_rand($urls, 10);
         
        foreach ($newArray AS $nome => $url)
          echo "<a href="$url">$nome</a><br />\n";
         
        ?>
        
        
        0 Miglior Risposta Ringrazia Cita Rispondi

          1 Risposta Ultima Risposta
        • S
          senamion User Attivo • ultima modifica di

          Chiaramente devi compilare la lista degli urls con almeno 10, se ne vuoi visualizzare 10.

          0 Miglior Risposta Ringrazia Cita Rispondi

            1 Risposta Ultima Risposta
          • C
            colvi User Attivo • ultima modifica di

            Grazie lo provo subito :fumato:
            Siete forti :ciauz::ciauz:

            0 Miglior Risposta Ringrazia Cita Rispondi

              1 Risposta Ultima Risposta
            • C
              colvi User Attivo • ultima modifica di

              Ciao, ho provato lo script ma non funziona, posto il codice, sarei grato se qualcuno mi aiutasse.

              <?

              $urls = array("Google" => "google.com","giorgiotave" => "giorgiotave.it","vendite" => "salute.it","salute" => "baci.it", "baci" => "costru.it","gi" => "gi.it", "effe" => "effe.it","h" => "h.it","io" => "io.it", "tu" => "tu.it", "lei" => "lei.it", );

              $newArray = array_rand($urls, 10);

              foreach ($newArray AS $nome => $url)
              echo "<a href="$url">$nome</a><br />\n";

              ?>

              0 Miglior Risposta Ringrazia Cita Rispondi

                1 Risposta Ultima Risposta
              • T
                thedarkita ModSenior • ultima modifica di

                Ciao colvi,

                Che errore da?

                C'era una virgola alla fine.
                [php]
                <?php

                $urls = array("Google" => "google.com","giorgiotave" => "giorgiotave.it","vendite" => "salute.it","salute" => "baci.it", "baci" => "costru.it","gi" => "gi.it", "effe" => "effe.it","h" => "h.it","io" => "io.it", "tu" => "tu.it", "lei" => "lei.it");

                $newArray = array_rand($urls, 10);

                foreach ($newArray AS $nome => $url)
                echo "<a href="$url">$nome</a><br />\n";

                ?>
                [/php]

                0 Miglior Risposta Ringrazia Cita Rispondi

                  1 Risposta Ultima Risposta
                • C
                  colvi User Attivo • ultima modifica di

                  [...]

                  Ho riguardato il codice, ma ancora niente!! non funziona non compare nulla nella pagina. E' bianca!! ❌x

                  0 Miglior Risposta Ringrazia Cita Rispondi

                    1 Risposta Ultima Risposta
                  • C
                    colvi User Attivo • ultima modifica di

                    Ancora niente ragazzi, avete idea in cosa sto sbagliando? Il codice è quello sopra riportato❌x

                    0 Miglior Risposta Ringrazia Cita Rispondi

                      1 Risposta Ultima Risposta
                    • M
                      magicale User Attivo • ultima modifica di

                      Ciao,
                      la funzione array_rand() NON ti restituisce elementi dell'array, ma gli indici di questi.

                      Quindi
                      [php]
                      $newArray = array_rand($urls, 10);
                      [/php]
                      è sì un array, ma di indici.

                      Inoltre se nell'array non memorizzi "http://" devi aggiungerlo all'output altrimenti i link non funzioneranno correttamente a meno che non siano pagine interne del tuo sito.

                      Modifica così le righe dell'output:
                      [php]
                      foreach ($newArray AS $nome)
                      echo "<a href="http://".$urls[$nome]."">$nome</a><br />\n";
                      [/php]

                      Alessandro

                      0 Miglior Risposta Ringrazia Cita Rispondi

                        1 Risposta Ultima Risposta
                      • C
                        colvi User Attivo • ultima modifica di

                        Ho provato con questo funziona ma non riesco a capire come far uscire 5/6 link a rotazione per volta.

                        <?

                        //set the urls
                        $urls = array("google.com" ,"hotmail.com" ,"hawkee.com" );

                        //set the text links
                        $text = array("Google" ,"Hotmail" ,"Hawkee");
                        srand(time());

                        //set the number in (rand()%3); for however many links there are

                            $random = (rand()%3);
                        

                        echo ("<a href = "$urls[$random]">$text[$random]</a>");

                        ?>

                        0 Miglior Risposta Ringrazia Cita Rispondi

                          1 Risposta Ultima Risposta
                        • M
                          magicale User Attivo • ultima modifica di

                          La soluzione te l'hanno già scritta prima, io ti ho solo corretto la riga errata:
                          [php]
                          <?php

                          $urls = array("Google" => "google.com","giorgiotave" => "giorgiotave.it","vendite" => "salute.it","salute" => "baci.it", "baci" => "costru.it","gi" => "gi.it", "effe" => "effe.it","h" => "h.it","io" => "io.it", "tu" => "tu.it", "lei" => "lei.it");

                          $newArray = array_rand($urls, 10);

                          foreach ($newArray as $nome)
                          echo "<a href="http://".$urls[$nome]."">$nome</a><br />\n";
                          ?>
                          [/php]
                          In questo esempio il tuo "5/6 link a rotazione" equivale a 10, se vuoi che siano 5 cambia il valore...

                          0 Miglior Risposta Ringrazia Cita Rispondi

                            1 Risposta Ultima Risposta
                          • C
                            colvi User Attivo • ultima modifica di

                            Grazie!!!!!!!!!!!!! :fumato:Prima o poi dovro' anche pagarti una cena!!

                            0 Miglior Risposta Ringrazia Cita Rispondi

                              1 Risposta Ultima Risposta
                            Caricamento altri post
                            Rispondi
                            • Topic risposta
                            Effettua l'accesso per rispondere
                            • Da Vecchi a Nuovi
                            • Da Nuovi a Vecchi
                            • Più Voti