impossible de valider ma saisie en SSL

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 : impossible de valider ma saisie en SSL

par chodaboy342 » 09 févr. 2008, 11:28

Tout d'abord, merci de vos réponses. J'étais assez occupé ces derniers temps, et j'ai pas eu le temps de regarder ça de plus aprés avant ajourd'hui.

Donc, j'ai suivi vos conseils :

- h0_noMan : j'ai ajouté un nom à mon formulaire dans ma page reservation.php[/b ](ligne 166).

- Pour Ryle : j'ai essayé de faire le ménage dans le fichier htm d'origine. J'ai viré la fonction preloadImages, et le javascript inclus dans <head>.

Et aussi, je me suis aperçu que je mettais un lien direct non sécurisé pour insérer mes infos dans la page SSL, et là, ça ne fonctionnait pas. J'ai donc mis un lien relatif pour ouvrir le petit calendrier à travers la connexion sécurisée et là, ça fonctionne :D

Merci à tous les 2.

par Ryle » 24 janv. 2008, 11:19

Le fait que ce soit deux codes différents doit probablement jouer dans le fait qu'il y ait deux comportement différents... :?

Une erreur js sur le code de ta page "ssl" : ton attribut ONLOAD="preloadImages(); n'est pas fermée... celui-ci est correct dans l'autre...

par h0_noMan » 24 janv. 2008, 03:00

C'est juste une erreur de formulaire.

Dans on URL mycalendar.php?form=formu&elem=datedeb on vois bien que tu veux mettre la valeur dans le champ datedeb du formulaire formu mais le fait est que ton formulaire n'a pas de nom.
//Remplaces
<form method="post" action="/~hoteluly/reservation.php">
// par
<form name="formu" method="post" action="/~hoteluly/reservation.php">

impossible de valider ma saisie en SSL

par chodaboy34 » 24 janv. 2008, 02:34

Bonjour,

J'ai un petit probléme avec un calendrier que je souhaite utiliser en php. Dnas un formulaire, je fais apparaît "..." pour ouvrir un calendier php et remplir automatiquement le formulaire sans faire de saisie. Sur une page normale, cela fonctionne bien, mais pas en SSL. Est-ce normal ? Est-ce SSL qui bloque l'envoi des données vers le formulaire ?
Y a t'il un moyen de contourner ce probléme ?

Si vous voulez voir de quoi je parle exactement :

Voilà l'url non sécurisée où cela fonctionne :

http://izcomputer.fr/ulysse/reservation.htm

La même chose en SSL, mais le formulaire ne sera pas remplit avec les dates :

https://ssl2.ovh.net/~hoteluly/reservation.php


Voilà le code du fichier php utilisé :
<?
  // Section de configuration

  $bgcolor="red" ;        // Couleur de fond
  $daybgcolor="aaaaaa" ;     // Couleur des jours de la semaine
  $dombgcolor="eeeeee" ;     // Couleur du jour sélectionné
  $dayholcolor="cccccc" ;     // Couleur des WE

  // Mois
  $month[0] = "Janvier" ;
  $month[1] = "Février" ;
  $month[2] = "Mars" ;
  $month[3] = "Avril" ;
  $month[4] = "Mai" ;
  $month[5] = "Juin" ;
  $month[6] = "Juillet" ;
  $month[7] = "Août" ;
  $month[8] = "Septembre" ;
  $month[9] = "Octobre" ;
  $month[10] = "Novembre" ;
  $month[11] = "Décembre" ;

  // Première lettre des jours de la semaine
  $day[0] = "D" ;
  $day[1] = "L" ;
  $day[2] = "M" ;
  $day[3] = "M" ;
  $day[4] = "J" ;
  $day[5] = "V" ;
  $day[6] = "S" ;

  $error01 = "Erreur : date invalide"

?>
<html>
<head>

<script language='JavaScript'>
 window.resizeTo(200,300) ;
 function modifier (jour)
 {
  window.location.href = "mycalendar.php?form=<?echo $form;?>&elem=<?echo $elem;?>&mois=" + document.forms["MyCalendar"].elements['month'].options[document.forms["MyCalendar"].elements['month'].selectedIndex].value + "&jour=" + jour +"&annee=" + document.forms["MyCalendar"].elements['year'].options[document.forms["MyCalendar"].elements['year'].selectedIndex].value

 }
<?
  if (!isset($jour))
       $jour = date("j") ;

  if (!isset($mois))
       $mois = date("m") ;

  if (!isset($annee))
       $annee = date("Y") ;

    // nombre de jours par mois
  $nbjmonth[0] = 31 ;
  $nbjmonth[1] = ($annee%4==0?($annee%100==0?($annee%400?29:28):29):28) ;
  $nbjmonth[2] = 31 ;
  $nbjmonth[3] = 30 ;
  $nbjmonth[4] = 31 ;
  $nbjmonth[5] = 30 ;
  $nbjmonth[6] = 31;
  $nbjmonth[7] = 31 ;
  $nbjmonth[8] = 30 ;
  $nbjmonth[9] = 31 ;
  $nbjmonth[10] = 30 ;
  $nbjmonth[11] = 31 ;

  if(!checkdate($mois,$jour,$annee))
  {
   echo "alert('$error01')\n" ;
   $jour = date("j") ;
   $mois = date("m") ;
   $annee = date("Y") ;
  }

  // Calcul du jour julien et du numéro du jour
  $HR = 0;
  $GGG = 1;
  if( $annee < 1582 ) $GGG = 0;
  if( $annee <= 1582 && $mois < 10 ) $GGG = 0;
  if( $annee <= 1582 && $mois == 10 && 1 < 5 ) $GGG = 0;
  $JD = -1 * floor(7 * (floor(($mois + 9) / 12) + $annee) / 4);
  $S = 1;
  if (($mois - 9)<0) $S=-1;
  $A = abs($mois - 9);
  $J1 = floor($mois + $S * floor($A / 7));
  $J1 = -1 * floor((floor($J1 / 100) + 1) * 3 / 4);
  $JD = $JD + floor(275 * $mois / 9) + 1 + ($GGG * $J1);
  $JD = $JD + 1721027 + 2 * $GGG + 367 * $annee - 0.5;



  /*$tmp = ((int)(($mois>2?$annee:$annee-1)/100)) ;
  $jj = (int)((((int)(365.25*($mois>2?$annee:$annee-1))) + ((int)(30.6001*($mois>2?$mois+1:$mois+13))) + $jour + 1720994.5 + ($annee > 1582 && $mois > 10 && $jour > 15?2-$tmp+((int)($tmp/4)):0))) ;
  $jj = (int)(($jj) % 7)*/
  $jj = (($JD+.5)%7) ;
?>
</script>
</head>
<?
  echo "<body bgcolor='#FFFFCC' onUnLoad=''>\n" ;

  echo "<center><form name='MyCalendar'>\n" ;
  echo "<table width='170' cellspacing='0' cellspading='0' border='0'><tr>\n" ;

  // Affichage de la sélection du mois et de l'année
  echo "<td><select name='month' onChange=\"modifier($jour)\">\n" ;

  for ($i=0;$i<12;$i++)
  {
   echo "<option value='".($i+1)."'".($mois==($i+1)?" selected":"").">".$month[$i]."</option>\n" ;
  }

  echo "</select></td>\n" ;

  echo "<td align='right'><select name='year' onChange=\"modifier($jour)\">\n" ;

  $y = date("Y") ;
  for ($i=$y-10;$i<$y+10;$i++)
  {
   echo "<option value='$i'".($annee==($i)?" selected":"").">$i</option>\n" ;
  }

  echo "</select></td></tr><tr><td colspan='2'>&nbsp;</td></tr>\n" ;

  echo "<tr><td colspan='2'><table width='100%' cellspacing='0' cellspading='0' border='0'>\n" ;
  echo "<tr>\n" ;

  // Affichage des jours
  for($i=0;$i<7;$i++)
  {
   echo "<td width='14%' bgcolor='#$daybgcolor'><font id='general'>".$day[$i]."</font></td>" ;
  }

  echo "</tr>\n<tr><td colspan='7'> </td></tr>\n<tr>\n" ;

  // Première ligne des jours
  $j = $jj ;//date ("w", mktime (0,0,0,$mois,1,$annee)) ;
  $dom = 1 ;
  for ($i=0;$i<7;$i++)
  {
   if ($j<=$i)
   {
        echo "<td".($dom==$jour?" bgcolor='#$dombgcolor'":"")."><a href='javascript:modifier($dom)'><font id='general'>".$dom++."</font></a></td>\n" ;
   }
   else
       echo "<td>&nbsp;</td>\n" ;
  }

  echo "</tr>\n" ;
  // Le reste
  for ($i=0;$i<5;$i++)
  {
   echo "<tr>\n" ;
   for ($j=0;$j<7;$j++)   
   {    
	$j_inac = ($j==0 || $j==6) ;
	
	if($dom < $nbjmonth[($mois-1)])
         echo "<td".($dom==$jour?" bgcolor='#$dombgcolor'":($j_inac ?" bgcolor='#$dayholcolor'":""))."><a href='javascript:modifier($dom)'><font id='general'>".$dom++."</font></a></td>\n" ;
    else if (checkdate($mois,$dom,$annee))
         echo "<td".($dom==$jour?" bgcolor='#$dombgcolor'":($j_inac ?" bgcolor='#$dayholcolor'":""))."><a href='javascript:modifier($dom)'><font id='general'>".$dom++."</font></a></td>\n" ;
    else
         echo "<td>&nbsp;</td>\n" ;

   }
   echo "</tr>\n" ;
  }

  echo "\n<tr><td colspan='10' align='center'>
  <input type='button' onclick='window.opener.document.forms[\"$form\"].elements[\"$elem\"].value=\"$jour-$mois-$annee\";window.close()' value='Valider'>&nbsp;&nbsp;
  <input onclick='window.close()' type='button' value='Annuler'></td></tr></table>\n" ;

  echo "\n</tr></table>\n" ;

  echo "</td></tr></table>" ;
  echo "</form></center>" ;

  echo "</body>\n" ;
?>
</html>