Combien de parmetres possibles dans une url???

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Combien de parmetres possibles dans une url???

par albat » 07 déc. 2006, 12:29

Modération :
Puisque ta question est résolue, j'ajoute le tag [Résolu]
pour indiquer aux personnes qui voudront consulter ce sujet qu'il contient une solution.

Tu peux réaliser cette opération toi-même
en cliquant sur le bouton [Mettre Résolu] qui s'affiche en haut à gauche de ce sujet
si tu as posté le 1er message en tant que membre (inscrit et identifié). ;)


Profites-en pour t'enregistrer ! ;)

par Cyr » 07 déc. 2006, 01:46

:idea: Et pourquoi tu ne passerais pas certains de ces paramètres par les sessions ? ;)
Pour en revenir à mon pb de départ, j'ai mis mes paramètres en session, comme suggeré par albat. Ca marche impécable !! \:D/

Mon objectif premier (optimisation d'un existant) est atteint.
Merci à vous tous pour vos suggestions et conseils.
A bientôt sur le forum :merci:

par Cyr » 06 déc. 2006, 14:01

salut pour la récupération tu fai bien :

$mavariable=$_GET['mavariable'];
oui oui, j'ai pas oublié les quotes :)

par Ryle » 06 déc. 2006, 12:56

Le w3c recommande de ne pas passer plus de 255 caracteres dans l'url, mais je ne suis pas certain que cela inclu les paramètres..
URI producers should use names that conform to the DNS syntax, even when use of DNS is not immediately apparent, and should limit these names to no more than 255 characters in length.
http://www.gbiv.com/protocols/uri/rfc/rfc3986.html
Mais il ne s'agit que d'une recommandation, on doit donc pouvoir en passer plus.

Cela semble également être lié au client. En l'occurence, chez IE, la limite de taille dans l'url est de 2083 caractères :
Microsoft Internet Explorer has a maximum uniform resource locator (URL) length of 2,083 characters
http://support.microsoft.com/default.as ... us;q208427

par fred9999 » 06 déc. 2006, 12:43

salut pour la récupération tu fai bien :

$mavariable=$_GET['mavariable'];

par Ajoloca » 06 déc. 2006, 12:36

Re,

Pour te faire une idée plus précise, utilise strlen()
Exp
echo 'Longueur : ' . strlen(serialize($tableau)) . '<br />';

par Cyr » 06 déc. 2006, 12:32

Après, la conséquance, je pense que l'url est tronquée mais qu'il n'y a pas de blocage particulier. Il n'y a que la page cible qui sera perdu puisqu'elle n'a pas tous les parametres qu'elle attend ;)
Je vois que mon petit pb vous interesse, j'en suis ravi :)

Zeus : c'est exactement ce qui m'arrive. je n'ai pas de blocage ou de plantage particulier. Mais ma page de sortie ne s'affiche pas car il lui manque des paramètres (c'est en tout cas ce que me montrent mes tests).
Pour info, mes 4 array non serialisés représentent à la louche 180 caractères en tout.

par Ajoloca » 06 déc. 2006, 10:28

Re,

Là j'ai un souci,
Avec le même code (plus haut) si j'appelle le script par http://localhost/....
je passe sans PB 300 caractères

Si je l'appelle par http://www. .....
Je bloque à 101

Pourquoi?????

Qui limite ?

par zeus » 06 déc. 2006, 10:02

Il me semble, en ce qui concerne les GETDATA, qu'il n'y a pas de limitations de parametres mais qu'il y a limitation sur la taille totale qui est, je crois, de 255 caractères à partir du "?"

Avec des tableaux sérialisés, il est très facile d'atteindre cette limite.

Après, la conséquance, je pense que l'url est tronquée mais qu'il n'y a pas de blocage particulier. Il n'y a que la page cible qui sera perdu puisqu'elle n'a pas tous les parametres qu'elle attend ;)

par Ajoloca » 06 déc. 2006, 10:02

Bonjour,
des sites comme mappy gèrent des nombreux paramètres dans l'url...
Pourquoi eux ne serait-ils pas limités ? :roll:
Je ne crois pas que le nombre de paramètres soit la première limite.
Avec ce code
<?php
	foreach($_GET as $key => $value) echo $key . ' = ' . $value . '<br/>';
?> 
et une URI comme celle-ci

Code : Tout sélectionner

ess3.php?a=0&b=1&c=2&d=3&e=4&f=5&g=6&h=7&i=8&j=9
J'obtiens
a = 0
b = 1
c = 2
d = 3
e = 4
f = 5
g = 6
h = 7
i = 8
j = 9
Par contre avec un seul paramètre et 101 caractères ça plante !

par DocType » 06 déc. 2006, 09:36

Pour illuster :

Code : Tout sélectionner

http://www28.mappy.com/sidBJ6YrgAc7/HMn21w/ACFGT?anchor=0&option=0&xsl=2&ivsl1=v1&ivsl2=v2&ivsl3=v3&isl=i0&sel=europe&csl=i1%2Cv1%2Cv2%2Cv3%2Ci2&fsl=i1%2Cv1%2Cv2%2Cv3%2Ci2&gsl=i1%2Cv1%2Cv2%2Cv3%2Ci2&out=2&issl=i1&iesl=i2&imult=0&flash=1&iveh=car&isveh=sedcar&wni1=&wci1=&noi1=&tni1=dunkerque&pci1=&tci1=&a10i1=&xi1=&yi1=&csi1=4326&CAN=&USA=&cci1=250&wni2=&wci2=&noi2=&tni2=paris&pci2=&tci2=&a10i2=&xi2=&yi2=&csi2=4326&CAN=&USA=&cci2=250&imode=0&x=0&y=0

par Invité » 06 déc. 2006, 05:09

pas sûr que ca soit du php

par DocType » 06 déc. 2006, 03:15

des sites comme mappy gèrent des nombreux paramètres dans l'url...
Pourquoi eux ne serait-ils pas limités ? :roll:

par Cyr » 06 déc. 2006, 02:02

Je ne maîtrise pas assez le sujet pour te donner une réponse absolue.
Mais je peux t'assurer que, par les sessions, tu peux passer bien plus que 3 paramètres ! ;)
Excellent !!
:mrgreen:

D'autant plus que je viens de tomber sur un exemple ou 8 pamètres sont passés en sessions (dont 5 array!!).
Ca n'a pas l'air trés compliqué à première vue.. Allez j'me lance, banco pour les sessions (mais pas maintenant...ca fais tard :sleeping: )

Merci encore pour les infos et suggestions.
Je pense que le sujet est RESOLU.
A+

par albat » 06 déc. 2006, 01:56

Je ne maîtrise pas assez le sujet pour te donner une réponse absolue.
Mais je peux t'assurer que, par les sessions, tu peux passer bien plus que 3 paramètres ! ;)