Problème de syntaxe

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 : Problème de syntaxe

par Cyrano » 20 nov. 2006, 15:12

Un peu qu'elle fonctionne, je ne t'en aurais pas parlé sinon :)

par dunbar » 20 nov. 2006, 14:48

Vérifie donc le type mime correspondant plutôt, ça va simplifier :
exemple :
<?php
//...
if($_FILES["aFile"]["type"] == "image/jpeg" || 
   $_FILES["aFile"]["type"] == "image/png" || 
   $_FILES["aFile"]["type"] == "image/gif"
)
{
    //...
?>
Ou encore :
<?php
//...
$extensions = array(
  "image/jpeg",
  "image/png",
  "image/gif"
);
if(!in_array($_FILES['aFile']['type'], $extensions))
{
    //...
Merci ta méthode fonctionne.

Merci à tous :wink:

par mere-teresa » 20 nov. 2006, 13:45

Un petit print_r ou var_dump s'impose pour vérifier le contenu des valeurs auxquelles tu compares les données sur ton fichier...

par Ryle » 20 nov. 2006, 12:32

Bizare en effet... tu as affiché les valeurs de :
- $lastPos
- subStr($lastPos, 1)
- strToLower(subStr($lastPos, 1))
- in_array(strToLower(subStr($lastPos, 1)), $extensions)

Pour vérifier ce que contenaient les premières et ce que retournait la dernière ?

par Cyrano » 20 nov. 2006, 12:32

Vérifie donc le type mime correspondant plutôt, ça va simplifier :
exemple :
<?php
//...
if($_FILES["aFile"]["type"] == "image/jpeg" || 
   $_FILES["aFile"]["type"] == "image/png" || 
   $_FILES["aFile"]["type"] == "image/gif"
)
{
    //...
?>
Ou encore :
<?php
//...
$extensions = array(
  "image/jpeg",
  "image/png",
  "image/gif"
);
if(!in_array($_FILES['aFile']['type'], $extensions))
{
    //...

par dunbar » 20 nov. 2006, 12:09

Très certainement au niveau du code qui teste les extensions autorisées qui doit gérer une chaine et non pas un tableau :)
Salut
$extensions = array('jpg', 'gif');
Non je ne pense pas
$lastPos = strRChr($_FILES['aFile']['name'], ".");
        	if ($lastPos !== false && in_array(strToLower(subStr($lastPos, 1)), $extensions)) {
Il me donne comme erreur que l'extension est pas bonne alors que j'ai bien un fichier avec l'extension autoriser :?: :cry:

par Ryle » 20 nov. 2006, 11:54

Très certainement au niveau du code qui teste les extensions autorisées qui doit gérer une chaine et non pas un tableau :)

Problème de syntaxe

par dunbar » 20 nov. 2006, 11:50

Bonjour,

J'ai un soucis je crée un formulaire à partir duquel il est possible de télécharger une photo mais il prend pas quand je lui place plusieurs extension autoriser ?
$extension = array('jpg','jpeg','gif','png');
Et par contre ceci fonctionne :
$extension = 'gif';
Pourriez-vous me dire ou est mon erreur ?

D'avance merci