CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

Enregistrements uniques

News jeu

Expeditions: Samurai veut révolutionner le RPG tactique avec une aventure entièrement jouable en coop

Voir
Aliojsa
Aliojsa
Niveau 9
26 janvier 2003 à 18:38:09

Je viens de faire un petit formulaire relié à une table prostikeurs ( ´login´, ´match´, etc...).

C´est un script de pronostics sportifs et je voudrais que chaque "login" ne puisse pronostiquer qu´une fois par "match" ( empecher de corriger son pronostic quoi).
Comment fait on ?

Je donne un exemple :
Je lance le formulaire avec comme valeurs ( Aliojsa, matchN°1, 3-0).Je voudrais que ´Aliojsa´ ne puisse plus pronostiquer pour ´matchN°1´.

stoff
stoff
Niveau 10
26 janvier 2003 à 18:42:50

alors
bah tu ajoute un champs nommé
"valid"
puis avant d´afficher le formulaire tu met:
if ( !valid)
echo " ton formulaire"
else
" dsl d´éja enregsitré"

stoff
stoff
Niveau 10
26 janvier 2003 à 18:49:00

ça ne t´aide pas ? (je me suis pas assez fait claire ?

Aliojsa
Aliojsa
Niveau 9
26 janvier 2003 à 18:50:40

Tu peux me donner un petit exemple stp ?
( je débute ^^)

stoff
stoff
Niveau 10
26 janvier 2003 à 19:01:28

if(!variable)
permet de savoir si ta variable est vide ou sy elle contient 0

Aliojsa
Aliojsa
Niveau 9
26 janvier 2003 à 19:11:26

Quand tu dis d´ajouter un champ nommé "valid" tu parles d´un champs dans le formulaire ou d´un champ dans la table ? ( dans le formulaire y en a deja un).

Tu es sur qu´avec cette technique ça va pas bloquer si le visiteur cherche à pronostiquer pour matchN°2 par exemple.

stoff
stoff
Niveau 10
26 janvier 2003 à 19:16:41

bezn non car dans le champs match2 il y aurais 1 d´avance

Aliojsa
Aliojsa
Niveau 9
26 janvier 2003 à 19:32:21

Je vais voir si j´y arrive...

Aliojsa
Aliojsa
Niveau 9
26 janvier 2003 à 23:57:55

Non, je comprends pas comment il faut faire, tu peux pas me montrer un exemple ou un site ou c´est expliqué ( j´ai pas trouvé) ?

jarose
jarose
Niveau 10
27 janvier 2003 à 09:30:20

Bon alors imaginons que ton form renvois vers pronosql.php, voici le contenu de pronosql.php :

<?
mysql_connect($host, $login, $pass) or die("db_error");
mysql_select_db($base) OR die("db_access");

$sql = "SELECT login FROM prostikeurs WHERE login = ´$_POST[login]´";
$q = mysql_query($sql) OR die(´SQL Erreur<br>´.$sql.´<br>´.mysql_error());
$nbr = mysql_num_rows($q);

if($nbr ! = "0") {
echo ´Vous avez déjà voté´;
} else {
mysql_query("insert into prostikeurs ( login, match, score)
values ( ´$_POST[login]´, ´$_POST[match]´, ´$_POST[score]´)")
OR DIE ( "Impossible d´enregistrer.");
echo "Votre vote a été ajoutée.";
}
? >

voilou, ça devrait être ça.

Aliojsa
Aliojsa
Niveau 9
27 janvier 2003 à 16:02:21

Merci, avec l´exemple je comprends deja un peu mieux : p
Par contre j´ai une parse error que j´arrive pas à trouver sur ( l.10) :
$q = mysql_query($sql) OR die(´SQL Erreur<br>´.$sql.´<br>´.mysql_error());

--------------------------------------------------
-------
Voila le formulaire que j´ai essayé :
<?
$host="localhost";
$login="***";
$pass="***";
$base="***";
mysql_connect($host, $login, $pass) or die("db_error");
mysql_select_db($base) OR die("db_access");

$sql = "SELECT login FROM prostiks WHERE login = ´$_GET[login]´";
$q = mysql_query($sql) OR die(´SQL Erreur<br>´.$sql.´<br>´.mysql_error());
$nbr = mysql_num_rows($q);

if($nbr ! = "0") {
echo ´Vous avez déjà prostiké´;
} else {
mysql_query("insert into prostiks
(login,journee,win,home,away,striker,commentaire)

values ( ´$_GET[login]´, ´$_GET[journee]´, ´$_GET[win]´´$_GET[home]´, ´$_GET[away]´, ´$_GET[striker]´,´$_GET[commentaire]´)")
OR DIE ( "Impossible d´enregistrer.");
echo "Votre prostik a été ajouté.";
}
? >

--------------------------------------------------
-------
?

Aliojsa
Aliojsa
Niveau 9
27 janvier 2003 à 16:13:09

. .. pour la ligne 10 j´ai temporairement enlevé le "or die" pour voir la suite, et j´ai des erreurs à presque toutes les lignes à partir de là : )
C´est quoi qui va pas dans ce que j´ai fait ?

captain_torche
captain_torche
Niveau 10
27 janvier 2003 à 16:20:32

Heu, c´est p´têtre con, mais tu as bien remis le point-virgule à la fin de ta ligne ?

Et sinon, quand t´as une parse error, ça peut aussi venir des lignes d´avant

Aliojsa
Aliojsa
Niveau 9
27 janvier 2003 à 16:30:46

Le point virgule c´est bon, j´ai tapé exactement comme dans mon post ci-dessus ( hormis les espaces ajoutés par le forum).

jarose
jarose
Niveau 10
27 janvier 2003 à 20:38:24

Sérieux, je vois pas d´erreur, si y a une couille à cette ligne là, c´est que y une erreur dans $sql, et si y a erreur dans $sql, y aura erreur sur toute la suite ( ça c´est normal) ; )
PHP te renvoit quoi comme erreur ?

sinon à cette ligne :
values ( ´$_GET[login]´, ´$_GET[journee]´, ´$_GET[win]´´$_GET[home]´, ´$_GET
T´as oublié une virgule.

Vérifies bien la ligne $sql.

jarose
jarose
Niveau 10
28 janvier 2003 à 12:14:49

Bah c´est normal, si y a une erreur dans la requete, y aura aussi une erreur à mysql_num_rows();
Et si y a une erreur là, ben il pourra pas renvoyer un nombre, et donc $nbr ! = "0" -> pas d´enregistrement...

Je t´ai dit, t´as du te planter dans la requete, à partir de $sql vers le haut.
J´ai testé chez moi et ça fonctionne...

Aliojsa
Aliojsa
Niveau 9
28 janvier 2003 à 16:33:08

ok je vais essayer de trouver l´erreur.
J´ai mis dans ma page exactement ce que j´ai copié plus haut.

Est ce que ça vient pas du " die("db_access"); " à ton avis ?
Parceque ça je l´ai copié sans chercher à comprendre sur le script que tu m´as montré, mais ça ne correspond à rien chez moi.

jarose
jarose
Niveau 10
29 janvier 2003 à 09:51:26

mets juste ça alors :
$q = mysql_query($sql);

Sous forums
  • Aide à l'achat Mac
  • Internet
  • Macintosh
  • Création de sites web
  • Création de Jeux
  • Linux
  • Programmation
  • Steam Deck
  • Hardware