if ( or ) php, @ l'aide - Programmation
Marsh Posté le 03-09-2001 à 16:34:32
faut pas mettre des "" pour définir les chaines de caractère utiisateur et mot-de-passe? Parce que tout le reste me semble correct.
Marsh Posté le 03-09-2001 à 16:37:11
Euh c'est pas comme ca qu'on compare des chaines de caracteres en PhP ! Du moins moins je ne fais pas comme ca ...
//if ($username !=utilisateur or $password !=mot-de-passe) {
if(strcmp($username,utilisateur)!=0 or strcmp($password,mot-de-passe)!=0)
[edtdd]--Message édité par _epegasus_--[/edtdd]
Marsh Posté le 03-09-2001 à 16:40:17
sisi, ca marche comme ca. les autes méthodes comme str_comp sont plus lourdes et ne doivent être utilisées que pour des comparaisons de grosses chaines ou de morceaux de chaines.
Marsh Posté le 03-09-2001 à 16:45:59
moi j'aurais fait
if ( ($username!='motdepasse') OR ($login!='mot-de-passe') ) {
à tester !
Marsh Posté le 03-09-2001 à 17:27:15
les opérators or, xor, and ont une précédence inférieure à =, !=, etc.
classé par ordre de priorité ascendant :
or, xor, or ...
=, !=, ...
||, && ....
http://www.php.net/manual/en/langu [...] edence.php
ton expression $username !=utilisateur or $password !=mot-de-passe
est équivalente à
(($username !=utilisateur) or $password) !=mot-de-passe
donc soit :
($username !=utilisateur) or ($password !=mot-de-passe)
ou mieux :
$username !=utilisateur || $password !=mot-de-passe
Marsh Posté le 03-09-2001 à 17:49:30
c clair mais disons qu'avec les ' en plus, ça devrait déjà aller mieux, et que le fait de mettre des parenthèses rend le code beaucoup plus clair
Marsh Posté le 03-09-2001 à 18:36:41
Putain c’est formidable !!!
Ça marche, c’est même de la case sensible (minuscule majuscule) !
Un grand merci @ tous et plus particulièrement @ : Sh@rdar & gizmo
Marsh Posté le 03-09-2001 à 19:45:03
je pourrais avoir une réponse exprimée en FRANCAIS? ou bien c'est trop compliqué pour toi?
Marsh Posté le 03-09-2001 à 20:26:15
on te tire pas dessus, c'est la colère des autres de ne pas avoir été remericé
Marsh Posté le 03-09-2001 à 21:44:54
ah! d'accord. fait plus simple la prochaine fois, j'ai le cerveau un peu embrumé par les exams pour le moment.
Marsh Posté le 03-09-2001 à 15:47:27
Je ne comprends pas pourquoi il suffit que le mot de passe soit valide pour que else soit exécuté. Plus clairement il suffit de trouver le mot de passe pour pouvoir uploader. Mais pourquoi ?
<?php
if ($username !=utilisateur or $password !=mot-de-passe) {
?>
<FORM ENCTYPE="multipart/form-data" ACTION="upload.php" METHOD=POST>
<div align="center">
<p>
<INPUT TYPE="HIDDEN" name="MAX_FILE_SIZE" VALUE="10000">
Hello Jackie. </p>
</div>
<table border="1" align="center" bgcolor="#6699FF" bordercolor="#6666FF">
<tr>
<td>Username :</td>
<td>
<input type="text" name="username">
</td>
</tr>
<tr>
<td>Password :</td>
<td>
<input type="password" name="password">
</td>
</tr>
<tr>
<td>File to upload</td>
<td>
<input name="NomFichier" type="FILE">
</td>
</tr>
</table>
<p align="center">
<INPUT TYPE="SUBMIT" VALUE="Upload">
<input type="reset" name="Cancel " value="Cancel ">
</p>
</FORM>
<?php
} else {
echo '<table border="1" align="center" bordercolor="#6666FF" bgcolor="#6699FF">
<tr>
<td>Temporary filename on server:</td>
<td>'.$NomFichier.'</td>
</tr>
<tr>
<td>Original filename:</td>
<td>'.$NomFichier_name.'</td>
</tr>
<tr>
<td>Size of '.$NomFichier_name.'</td>
<td>'.$NomFichier_size.'</td>
</tr>
<tr>
<td>Type of '.$NomFichier_name.'</td>
<td>'.$NomFichier_type.'</td>
</tr>
</table>
';
copy($NomFichier, "$NomFichier_name" );
}
?>
Merci !