Invité
Invité n'ayant pas de compte PHPfrance
17 déc. 2005, 16:13
je voulais simplement que l'utilisateur , remplisse un formulaire, et puisse uploader une image; et recuperer le tout dans une base de donnée pour les afficher ensuite.
tout fonctionne sauf le chemin de l'images ne s'insere pas dans la base
@mysql_connect($mysql, $login, $pass) ;
echo $query = "INSERT INTO $table(date, titre, lanews, url, moturl, pseudo, motcle, target, icone, photo) VALUES ('$date', '$titre', '$lanews', '$url', '$moturl', '$redact', '$motcle', '$target', '$icone', '$dest_fichier')";
echo $query2 = "INSERT INTO $tabletemp(date, titre, lanews, url, moturl, pseudo, motcle, target, icone, photo) VALUES ('$date', '$titre', '$lanews', '$url', '$moturl', '$redact', '$motcle', '$target', '$icone', '$dest_fichier)";
$result = @mysql_db_query($base, $query);
$result2 = @mysql_db_query($base, $query2);
if (($result) | ($result2)) {
echo "La News : <span class=\"titre\">$titre</span><br>A été ajoutée avec succés</p>";
}
else {
echo "Attention, l'opération à échouée :o(</p>";
}
// Fin ajout
}}
if ($modifid)
{
if (!empty($coche3))
{
$motcle3=$nom_jeu3;
}
if (empty($target3)){$target3="_blank";}
@mysql_connect($mysql, $login, $pass) or die ("probleme de connexion a la base");
$query = "update $tabletemp set titre='$titre3', date='$date3', lanews='$lanews3', url='$url3', moturl='$moturl3', pseudo='$pseudo3', motcle='$motcle3', target='$target3', icone='$icone3' where id like $modifid";
$query2 = "update $table set titre='$titre3', date='$date3', lanews='$lanews3', url='$url3', moturl='$moturl3', pseudo='$pseudo3', motcle='$motcle3', target='$target3', icone='$icone3' where id like $modifid";
$result = @mysql_db_query($base, $query);
$result2 = @mysql_db_query($base, $query2);
if (($result) | ($result2)) {
echo "La News été modifiee</p>";
}
// Fin modfication
}
if ($ajouter) //Affiche formulaire
{
$datejour = (date("Y-m-d H:i:s"));
echo "
<form name='form1' method='post' action='' enctype='multipart/form-data'>
<input type='hidden' name='ajout' value='ok'>
<hr width='50%' align='center'>
<p>Titre de la News :
<input type=text name='titre' maxlength='80' size='40'>
<br>
Date (YYYY-MM-DD hh:mm:ss)
<input type='text' name='date' value='$datejour'>
<br>
La News :<i><b><br>
</b></i>
<textarea name='lanews' rows='10' cols='80' wrap='VIRTUAL'></textarea>
</p>
<p>URL de référence ou 'mailto:[email protected]' (au cas ou) :
<input type=text name='url' maxlength='150' size='30' value='http://'>
<span class='titre'>(s'ouvre dans une nouvelle fenêtre par defaut)</span></p>
<p><font color='#FF9900'>Cocher la case pour un lien interne (<font color='#FFFF00'><b>../</b></font>dossier/page.htm)</font>
<input type='checkbox' name='target' value='_parent'>
</p>
<p>Texte du lien (<b><i>obligatoire en cas d'url, au pire recopiez
l'url</i></b>) :
<input type=text name='moturl' maxlength='150' size='30'>
</p>
<p><font size='-1' color='#FF9900'>IMAGES</font> <font color='#FF9900'>:
</font>
<input type='file' name='photo'></
</p>
<p><input type=submit value='Ajouter'></p>
</form>
";
// Fin formulaire ajouter
}
////ajout image
if(isset($_FILES['photo'])){ // params unset($erreur);
$extensions_ok = array('png', 'gif', 'jpg', 'jpeg');
$taille_max = 100000;
$dest_dossier = 'upload/';
// utilisez également des slashes sous windows :
// vérifications
if( !in_array( substr(strrchr($_FILES['photo']['name'], '.'), 1), $extensions_ok ) )
{ $erreur = 'Veuillez sélectionner un fichier de type png, gif ou jpg !'; }
elseif( file_exists($_FILES['photo']['tmp_name'])
and filesize($_FILES['photo']['tmp_name']) > $taille_max)
{ $erreur = 'Votre fichier doit faire moins de 500Ko !'; }
// copie du fichier if(!isset($erreur))
{ $dest_fichier = basename($_FILES['photo']['name']);
// formatage nom fichier // enlever les accents
$dest_fichier = strtr($dest_fichier, 'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ', 'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
// remplacer les caracteres autres que lettres, chiffres et point par _
$dest_fichier = preg_replace('/([^.a-z0-9]+)/i', '_', $dest_fichier);
// copie du fichier
move_uploaded_file($_FILES['photo']['tmp_name'], $dest_dossier . $dest_fichier); }
}
//fin ajout image