PHP valeur et boucle

Résolu/Fermé
G1bp - 17 sept. 2009 à 08:53
 G1bp - 3 oct. 2010 à 02:04
Bonjour, j'ai un fichier php qui doit produire une boucle avec des valeurs.
Or je me suis renseigner, je ne peux que les stocker (Valeur) en les enregistrant dans un fichier, or je veux l'upload sur un serveur simple sans édition de la part des joueurs.
Donc je veux que la valeur idt soit idt+1 et retourne la valeur.

Pour finir, je demande comment peut t-on changer la valeur = $_POST['idt']
Et comment recharger la page en gardant la valeur modifier ($_POST['idt'])

Si vous ne comprenez pas tout voici une autre forme :
$_POST['idt'] vaut au début "0"
Je veux qu'a chaque "F5" (Rechargement) il y est $_POST['idt'] plus 1
Et donc je recherche le moyen de recharger tout en gardant la valeur modifier.
Voilà mieux compris ?


@++ merci d'avance !
A voir également:

29 réponses

Atropa Messages postés 1940 Date d'inscription mercredi 25 juin 2008 Statut Membre Dernière intervention 11 mai 2014 274
17 sept. 2009 à 09:27
ben si c'est la question question c'est que c'est super pas optimisé ton truc !

mais sinon tu ne peux le faire que par les sessions...

ou un autre choix c'est de couper ton fichier en tableau et de faire une boucle for ou while ou un foreach suivant la composition de ton fichier...
1
CaPiT Messages postés 609 Date d'inscription lundi 7 janvier 2008 Statut Membre Dernière intervention 21 avril 2010 51
17 sept. 2009 à 09:31
Bonjour,

tu mets ton $_POST['idt'] dans un hidden (pour le cacher) puis tu l'incrémentes:

<?php $val = $_POST['idt']+1; >
<input type="hidden" value="<?php echo $val; ?>"/>

J'ai pas testé. sinon avec les Sessions y'a pas de soucis et c'est simple.
1
Atropa Messages postés 1940 Date d'inscription mercredi 25 juin 2008 Statut Membre Dernière intervention 11 mai 2014 274
17 sept. 2009 à 09:57
essai ça :

function pseudoMdp($path,$pseudo,$mdp) {
		if(file_exists($path) && $lines=file($path)) {
			foreach($lines as $line) {
				$e = explode(';',$line,2);
				if($e[0] == $pseudo && $e[1] == $mdp) return true;
			}
		}
		return false;
	}
	
	$test = pseudoMdp('use.cfg',$_POST['pseudo'],$_POST['mdp']);


si $test vaut true c'est que le mot de passe existe avec le pseudo sinon c'est que ce n'est pas bon soit une fonction qui n'a pas marché soit que le pseudo ou le mot de passe n'est pas bon
1
Atropa Messages postés 1940 Date d'inscription mercredi 25 juin 2008 Statut Membre Dernière intervention 11 mai 2014 274
17 sept. 2009 à 10:17
voilà comment tu peux retrouver ton pseudo et ton mot de passe :

<?php

	function pseudoMdp($path,$pseudo,$mdp) {
		if(file_exists($path) && $lines=file($path,FILE_SKIP_EMPTY_LINES)) {
			foreach($lines as $line) {
				$e = explode(';',$line,2);
				if(trim($e[0]) == $pseudo && trim($e[1]) == $mdp) return true;
			}
		}
		return false;
	}
	
	$test = pseudoMdp('use.cfg',$_POST['pseudo'],$_POST['mdp']);
	echo ($test)? 'pseudo et pass ok' : 'pseudo et mot de passe faux';

?>


ton fichier use.cfg doit ressembler à ça :

pseudo;mot de passe
pseudo;mot de passe
pseudo;mot de passe
pseudo;mot de passe
pseudo;mot de passe
pseudo;mot de passe
1

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Atropa Messages postés 1940 Date d'inscription mercredi 25 juin 2008 Statut Membre Dernière intervention 11 mai 2014 274
17 sept. 2009 à 09:08
bonjour,

c'est pas claire du tout mais tu peux utiliser les sessions pour faire ca...
0
En faite ça je sais !
Mais ça ne reste pas ! (La valeur)
Merci d'avance
0
Atropa Messages postés 1940 Date d'inscription mercredi 25 juin 2008 Statut Membre Dernière intervention 11 mai 2014 274
17 sept. 2009 à 09:11
c'est quoi le but de la manoeuvre?

explique ce que tu veux faire sans parler de code...
0
Hé bien je veux garder ma valeur principale et ajouter +1 puis recharger la page.
Sachant que en rechargeant la page, la valeur reste !
Merci d'avance
0
Atropa Messages postés 1940 Date d'inscription mercredi 25 juin 2008 Statut Membre Dernière intervention 11 mai 2014 274
17 sept. 2009 à 09:18
ma question c'était plutôt pourquoi as tu besoin d'augmenter ta valeur de 1 à chaque rechargement?

qui recharge la page? le site ou l'utilisateur? ça doit se recharger en boucle ou juste une fois? si ca se recharge en boucle c'est tout les combien de temps?
0
C'est la page php qui recharge pour permettre une boucle.
Cette boucle servira a trouver dans un fichier, une autre valeur donné par l'utilisateur.
Et qui déterminera si il existe ou pas.
Bref la valeur pseudo et mot de passe dans un fichier txt.
Mais ce n'est pas vraiment la question je crois. ^^
0
Session ?
Moi j'utilise :
	$delai=1;
	header("Refresh: $delai;"); 


C'est quoi ?
0
Super ! Merci !
0
CaPiT Messages postés 609 Date d'inscription lundi 7 janvier 2008 Statut Membre Dernière intervention 21 avril 2010 51
17 sept. 2009 à 09:34
Pas de soucis ;)

Bonne continuation !
0
Excuse j'ai plus de droit a mon pseudo !
C'est moi G1bp
Mais comment récupérer la valeur de ton input ?
0
Atropa Messages postés 1940 Date d'inscription mercredi 25 juin 2008 Statut Membre Dernière intervention 11 mai 2014 274
17 sept. 2009 à 09:34
les sessions c'est des super global stocké dans un fichier :

https://www.php.net/manual/fr/book.session.php
https://www.php.net/manual/fr/reserved.variables.session.php

mais ne fais pas comme ça pour rechercher dans un fichier !

je crois que tu ne peux pas faire plus lourd et plus long que comme ça

donne moi la composition de ton fichier et j'te montre un petit truc si tu veux mais fais pas comme ça !
0
Voilà :
<html>
<title>Connexion <?php echo $_POST['pseudo']; ?> !</title>
<script language="javascript">
<!--
function load()
{
	window.location="Narvak.html";
	exit
}
//-->
</script>
<?php
$file = "use.cfg";
$file=fopen("$file","r");  // ouverture du fichier
$content = fgets($file, 4096); // stockage dans $content
$cnt = explode(";",$content);  // parsing des données basé sur ";")
$ps = $_POST['pseudo'];
$mdp = $_POST['mdp'];
$idt = $_POST['idt'];
$fin=count($content)-1;
if ($idt > $fin)
{
	echo "Erreur ! Pseudo et mot de passe non valide !";
	exit();
}
$sf = $cnt[$idt];
if ($ps == $sf)
{
	echo "Pseudo bon !";
	exit();
}
else
{
	$idt = $idt+1;
	$_POST['idt'] = $idt;
	$delai=1;
	header("Refresh: $delai;"); 
}
?>
</html>

Merci d'avance
0
CaPiT Messages postés 609 Date d'inscription lundi 7 janvier 2008 Statut Membre Dernière intervention 21 avril 2010 51
17 sept. 2009 à 09:38
Tu mets un name :



<?php $val = $_POST['truc']+1; >
<input name="truc" type="hidden" value="<?php echo $val; ?>"/>
0
A oui mais Attropa a raison !
Trop difficile de plus où tu le recharge ?
0
CaPiT Messages postés 609 Date d'inscription lundi 7 janvier 2008 Statut Membre Dernière intervention 21 avril 2010 51
17 sept. 2009 à 09:43
Je vois pas ou est le soucis de ma solution. C'est simple en plus.

Les sessions ok mais pour une variable, ouai.... pourquoi pas.
0
Atropa Messages postés 1940 Date d'inscription mercredi 25 juin 2008 Statut Membre Dernière intervention 11 mai 2014 274
17 sept. 2009 à 09:45
comment tu écris tes données dans ton fichier texte?

si tu enregistre comme ça

pseudo;mot de passe
pseudo;mot de passe

tu peux facilement le faire sans recharger ta page !!!!

par contre il faut que tu interdise le ; dans les pseudo !

j'te fais une petite fonction
0