Ses derniers messages sur les forums
Non un exit arrête le script.
Je voulais en fait arrêter la boucle dès que je trouvais la valeur. Le break me semblait (c'est une question d'appréciation) un peu barbare pour sortir de la boucle
j'ai trouvé une technique avec un do while et ça semble bien fonctionné.
Bonjour à tous,
Voila j'ai une boucle avec un "break" dedans et je souhaite savoir s'il y a une façon plus élégante de faire ça
<?php
$tableau = array('oiseau'=>'titi','humain'=>'toto');
$cherche = 'toto';
foreach($tableau as $cle=>$valeur)
{
if($tableau[$cle] == $cherche)
{
$trouve = $valeur;
break;
}
}
?>
L'exemple est bateau mais c'est juste pour illustrer ma question.
Ouep t'as raison la globule ;)
J'venais justement corriger mon erreur ^^!
Normal que cela ne fonctionne pas :)
la méthode POST retourne toujours un tableau associatif donc tu ne peux pas proceder comme cela :
La bonne méthode pour écrire c'est
Tu peux aussi utiliser foreach qui parse ton tableau associatif mais ça complique un peu la tache lol
J'vais mettre une ex :
<?php
$i=0;
foreach ($_POST as $val)
{
$_POST[$i]=trim(strtolower($val));
$i++;
}
?>
tu peux faire aussi un truc comme ça pour afficher les membres présents. J'ai pris 30 minutes mais tu peux faire plus ou moins
$sql = "SELECT id,pseudo,date_visite FROM membre_online WHERE date_visite BETWEEN(NOW() - INTERVAL 30 MINUTE) AND NOW()";
J'vais lancer un morceau de code écrit à la volé lol C'est une simple idée ^^
<?php
session_start();
$erreur=0;
//RECUPERATION l'id de session
$id_session=(isset($_SESSION['id'])) ? $_SESSION['id'] : Null;
//RECUPERATION l'id de l'URL
$id_url=(isset($_GET['id'])) ? $_GET['id'] : Null;
if(empty($id_session)||empty($id_url)||($id_rul!=$id_session))
{
$erreur=1;
}
if((!eregi('^[[:digit:]]+$',$id_url))||($id_url>4294967295)||($id_url<0))
{
$erreur=1;
}
if($erreur==1)
{
//c'est pas bon je redirige vers une page d'erreur
}
else
{
//c'est bon la tu peux commencer ta connexion à la base de données etc etc
}
?>
Voila une "solution"... il y en a d'autres mais au moins t'as une piste pour commencer lol
Je précise que j'ai rien testé lol mais je pense que le code est correct (mais pas totalement complet...ni totalement sécurisé)!
Pourquoi tu ne prends pas l'id en session lorsqu'un membre se connecte à son compte?! comme ça plus besoin de passe par l'URL pour transmettre l'id du membre.
Il est préférable de faire la bidouille en interne coté serveur lol Sans passer par l'URL...Au moins tu évites certains problèmes de hacking et détournement de requetes.
Puis en fesant ta bidouille en interne, t'es certain que tu retournes le résultat que tu veux ^^!
En fait j'ai trouvé le problème lol le script fonctionne!!
c'etait une simple erreur de javascript...Le résultat généré par le script doit être du javascript et non du html... :) La méthode est la même sauf que pour afficher un résultat, il faut utiliser echo'document.write('blabla')'; et non un simple echo 'blabla';
Il faut bien utiliser la méthode GET comme je l'avais pensé à la base!
Voila la solution pour afficher la variable transmise (il faut bien sûr la traiter pour être certain qu'elle est correcte et non détourné de son but initial... ^^ )
if(isset($_GET['type'])){$type=$_GET['type'];}
echo'document.write('<strong>Ici la variable '.$type.' </strong>')';
Voila avec 'document.write()' ça fonctionne :) Merci de votre aide
Bon voila mon problème lol
Je fais un compteur distant pour l'inclure sur des sites html
mon script est le suivant :
<script language="JavaScript" src="http://www.monsite.com/script.php?type=1&id=1"></script>
et dans le script php je récupère mes variables comme ça (du moins je le pensais...)
if(isset($_GET['type'])){$type=$_GET['type'];}
if(isset($_GET['id'])){$id =$_GET['id'];}
or je me retrouve avec des variables vide ...:s
Je ne sais pas trop pk...avez vous des solutions à mon problème ??!
le script tourne et s'affiche bien dans une page HTML mais les variables sont nulles... je ne sais pas si le pb vient de javascript...ou si je n'utilise pas la bonne méthode pour retrouver mes variables !
Merci

j'ai toujours pas trouvé le problème lol ^^! mais je vais chercher, chercher et encore chercher lol