8792 sujets

Développement web côté serveur, CMS

Bonjour a tous , j'avait demander si quelqu'un pouvez me faire le meme script que celui de wikipedia permettant de prendre une page au hasard .. voici ce que qq'un m'as gentiment fait

<a href="#" onclick="rand();return false">lien au hasard</a>

<? function rand(){

/* là, tu dois connaître à l'avance le nombre de pages de 

type "technologie_X.php" avec X variant de 0 à n...;

tu peux alors définir une variable égale au nombre de pages; */

nbr_pages=6;

location.href="technologies_" + Math.floor(Math.random()*nbr_pages) + ".php";

} ?>


c'est super ...mais le probleme est qu'il me donne une parse error a la ligne "nbr_pages' donc je vient chercher de l'aider ...Merci Smiley lol
Modifié par obusco (01 Sep 2006 - 09:22)
Woula Smiley ohwell

onclick="rand()"; ça c'est du JavaScript

<? function rand() {} ?> ça c'est du PHP, ça n'ira pas, c'est quoi ce machin Smiley ohwell

Tu fais tout en PHP et propre :


<a href="random.php">lien au hasard</a>

Côté HTML et pour le PHP :

fichier random.php

<?php
function ma_fonction_de_choix()
{
   // ou un chiffre au hasard ou une liste de page et un élément tiré au hasard parmi eux
}

$mapage = ma_fonction_de_choix();

header('location: ' . $mapage);
?>


Avec un calcul à déterminer pour la page à choisir. Là tout dépend comment est organisé ton site.

Mais là, le machin qu'on t'as donné, c'est n'importe quoi, PHP et JS mélangé, reposer sur JS pour ça n'est pas un bon choix dans tous les cas.
Merci beaucoup de ta reponse !

J'ai pas compris le code de random j'aimerait savoir si on pouvait me le 'ocnfigurer' pour que le script fait directement un choix sur les page nommée 'technologie_X.php (X etant le numeros de la technologie allant de 1 a 6)

Merci d'avence pour vos reponse
Bah, c'est ce que tu dois faire dans ta fonction ça justement.


<?php
function ma_fonction_de_choix()
{
return rand(1, ##TON_MAX##);
}

$mapage = 'technologie_' . ma_fonction_de_choix() . '.php';

header('location: ' . $mapage);
?>


où "##TON_MAX##" est la page maximale (ici 6)
Modifié par Olivier (01 Sep 2006 - 01:18)
random.php
<?php
header('location: technologie_'.rand(1, 6).'php');
?>
Ce script PHP tire un nombre N au hasard entre 1 et 6 inclus, et fait une redirection vers la page technologie_N.php
Modifié par 84mickael (01 Sep 2006 - 01:17)
mickael a fait la version condensée en 1 ligne ^^
Après, tout dépend de la "complexité" du "choix au hasard", ici c'est suffisant.

Sinon, plutôt que de passer par un random.php, tu génères directement le lien aléatoire :

<a href="technologie_<?php echo rand(1,6); ?>.php">page au hasard</a>
Et bien que dire apart un enorme merci , c'est tres utile pour moi !
Un scri^pt que je ne pouvait pas faire mes connaissance etant tros faible , je vous remerci aussi de m'avoir fait le script en une ligne ca evite l'appartition d'une page blanche

Sur ce je vais allez manger donc bonne continuation , bonne matinée et merci encore