Animation gif pendant l'hébergement d'un fichier

Résolu/Fermé
florianlp Messages postés 72 Date d'inscription mercredi 15 février 2012 Statut Membre Dernière intervention 21 octobre 2015 - Modifié par florianlp le 15/09/2013 à 03:03
florianlp Messages postés 72 Date d'inscription mercredi 15 février 2012 Statut Membre Dernière intervention 21 octobre 2015 - 22 sept. 2013 à 03:57
Bonjour,

J'essaye d'ajouter sur mon script d'hébergement de fichiers, une animation .gif pendant l'hébergement du fichier, j'ai regarder la plupart des sujets sur google mais rien ne fonctionne.

Une partie de l'index.php:

<script type="text/javascript">

function verif()
{
if (document.getElementById('case').checked)
{return true;}
else
{
alert ("Merci d'accepter les Conditions Générales d'Utilisation");
return false;
}
}

</script>

<form name="upload" enctype="multipart/form-data" method="post" action="upload.php" onsubmit="return verif()">
<input type="file" class="text" name="file" style="margin-top:0.8em; margin-left:1.5px; width:26em;"><br />
<input type="submit" onclick="bt = 1;" onClick="loadinc();" class="button" value="Heberger" style="margin-top:0.8em;" />
<input type="checkbox" name="case" id="case"/> J'accepte les <a href="#cgu" class="jumplink">CGU</a>

</form>

Voilà si vous avez une idée de comment je pourrai intégrer l'animation .gif je suis preneur !

Merci d'avance.
A voir également:

6 réponses

Utilisateur anonyme
15 sept. 2013 à 09:17
Salut je vais répondre sans être sur de moi, peut être que je devrais pas...

il me semble que en php, une fois un fichier uploader la page se rafraîchie.

Tu pourrais mettre ton gif en display: none; et si la case CGU est bien coché et que toutes les conditions remplient ton gif passe en display: block;...il apparaîtra jusqu'à que la page se rafraîchisse.
0
florianlp Messages postés 72 Date d'inscription mercredi 15 février 2012 Statut Membre Dernière intervention 21 octobre 2015
15 sept. 2013 à 16:49
D'accord, pourrais-tu m'aider à mettre ceci en place ? car je suppose qu'il faut modifier la fonction verif JavaScript ?
0
Voilà qui semble fonctionner chez moi je met les fichiers dans un dossier uploads
si le fichier est lourd on a le temps de voir le gif sinon c'est trop rapide, mais ca fonctionne chez moi :

<!DOCTYPE html>
<html>
<head>
<title>ccm</title>
<meta charset="UTF-8" />

</head>
<body >
<div id="content">

<form action="index.php" method="post" enctype="multipart/form-data" id="fo1">

<input type="file" name="monfichier" />
<input type="checkbox" id="check" name="check" />
<label>CGU</label>
<br />
<br />
<input type="submit" id="sub" />

</form>
<img src="gif.gif" alt="" id="gif" style="display: none" />
<?php
if (isset($_FILES['monfichier']) AND $_FILES['monfichier']['error'] == 0 && isset($_POST['check'])) {
if ($_FILES['monfichier']['size'] <= 1000000000) {
$infosfichier = pathinfo($_FILES['monfichier']['name']);
$extension_upload = $infosfichier['extension'];
$extensions_autorisees = array('jpg', 'jpeg', 'gif', 'png', 'avi');
if (in_array($extension_upload, $extensions_autorisees)) {

move_uploaded_file($_FILES['monfichier']['tmp_name'], 'uploads/' . basename($_FILES['monfichier']['name']));
echo "L'envoi a bien été effectué !";
}
}
}
?>
</div>
<script type="text/javascript">
var gif = document.getElementById("gif");
var sub = document.getElementById("sub");
var check = document.getElementById("check");
sub.onclick = function() {
if (check.checked) {
gif.style.display = "block";
}
else{
alert("vous devez accepter");}
}
</script>

</body>
</html>



׺°"~'"°º×]|I{*------» m3745p10!7 «------*}I|[׺°"~'"°º×
0
florianlp Messages postés 72 Date d'inscription mercredi 15 février 2012 Statut Membre Dernière intervention 21 octobre 2015
Modifié par florianlp le 20/09/2013 à 16:26
Bonjour,

Alors, tout fonctionne, mais j'ai l'impression qu'il y a un souci au niveau de la checkbox:

Quand on ne coche pas on a le message du navigateur qui nous demande "vous devez accepter", mais quand on fait ok ou qu'on ferme cette fenêtre, c'est comme si la personne avait accepter car la page upload le fichier, alors que ça se trouve la personne ne souhaite pas accepter.

Alors qu'avec mon ancienne checkbox après avoir fait ok sur le message du navigateur il fallait cocher la case, sans ça on ne pouvait uploader de fichiers.

Mon ancienne checkbox:

<script type="text/javascript">
document.getElementById("tete").src = 'ajaxloader1.gif'
function verif()
{
if (document.getElementById('case').checked)
{return true;}
else
{
alert ("Merci d'accepter les Conditions Générales d'Utilisation");
return false;
}
}

</script>

<input type="checkbox" name="case" id="case"/>

Donc si tu as le solution pour modifier la validation de ta checkbox, ça serait nickel !

Je te remercie d'avance !
0
salut, dans ta partie php tu as bien rajouté : isset($_POST['check']) ???


ou dans ton cas : isset($_POST['case'])
׺°"~'"°º×]|I{*------» m3745p10!7 «------*}I|[׺°"~'"°º×
0
florianlp Messages postés 72 Date d'inscription mercredi 15 février 2012 Statut Membre Dernière intervention 21 octobre 2015
Modifié par florianlp le 20/09/2013 à 20:28
La partie upload est dans un fichier .php, voici une partie du code de mon fichier:

if(!empty($_FILES["file"]["name"])){

// Nom du fichier:
$nomFichier = $_FILES["file"]["name"] ;
// Nom temporaire:
$nomTemporaire = $_FILES["file"]["tmp_name"] ;
// Type du fichier:
$typeFichier = $_FILES["file"]["type"] ;
// Poids en octets:
$poidsFichier = $_FILES["file"]["size"] ;
// Poids en Kilo-octets:
$poidsFichierK = $poidsFichier/1024;
$poidsFichierK = sprintf("%.0f", $poidsFichierK) ;
$codeErreur = $_FILES["file"]["error"] ;
$extension = strrchr($nomFichier, ".");


if($poidsFichier <> 0){
// Si la taille du fichier est supérieure
// maximum spécifiée message d'erreur
if($poidsFichier < $MAX_SIZE){
// test si le fichier a une extension autorisée
if(isExtAuthorized($extension)){

J'ai essayer de rajouter ce que tu m'a dit mais rien à faire, ça me fait une erreur sur le site, peut-être ai-je mal rajouté ce que tu m'a dit ?
0
alors je n'ai pas testé mais tu obtiens une erreur si tu met :

if(!empty($_FILES["file"]["name"]) && isset($_POST['case']) ){

si oui je regarderai de plus pret
0
florianlp Messages postés 72 Date d'inscription mercredi 15 février 2012 Statut Membre Dernière intervention 21 octobre 2015
Modifié par florianlp le 20/09/2013 à 23:04
non pas d'erreur mais toujours la même chose quand on ferme la fenetre ou clique sur ok ça charge quand même le fichier sans qu'on est cocher.

J'ai essayer ça:
if(!empty($_FILES["file"]["name"]) && isset($_POST['check']) ){


vu que j'ai mis la fonction que tu m'a donné:

<script type="text/javascript">
var gif = document.getElementById("gif");
var sub = document.getElementById("sub");
var check = document.getElementById("check");
sub.onclick = function() {
if (check.checked) {
gif.style.display = "block";
}
else{
alert("vous devez accepter");}
}
</script>

Mais toujours le même bug, mais pas d'erreur php.

Merci d'avance !
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
voilà j'ai adapté a ton code

<form action="index.php" method="post" enctype="multipart/form-data" id="fo1" onsubmit="return verif()">

<input type="file" name="monfichier" />
<input type="checkbox" id="check" name="check" />
<label>CGU</label>
<br />
<br />
<input type="submit" id="sub" />

</form>
<img src="gif.gif" alt="" id="gif" style="display: none" />
<?php
if (isset($_FILES['monfichier']) AND $_FILES['monfichier']['error'] == 0 && isset($_POST['check'])) {
if ($_FILES['monfichier']['size'] <= 1000000000) {
$infosfichier = pathinfo($_FILES['monfichier']['name']);
$extension_upload = $infosfichier['extension'];
$extensions_autorisees = array('jpg', 'jpeg', 'gif', 'png', 'avi');
if (in_array($extension_upload, $extensions_autorisees)) {

move_uploaded_file($_FILES['monfichier']['tmp_name'], 'uploads/' . basename($_FILES['monfichier']['name']));
echo "L'envoi a bien été effectué !";
}
}
}
?>
</div>
<script type="text/javascript">
var gif = document.getElementById("gif");
var sub = document.getElementById("sub");
var check = document.getElementById("check");
function verif() {
if (check.checked) {
gif.style.display = "block";
return true;
}
else{
alert("vous devez accepter");
return false;}
}
</script>


׺°"~'"°º×]|I{*------» m3745p10!7 «------*}I|[׺°"~'"°º×
0
florianlp Messages postés 72 Date d'inscription mercredi 15 février 2012 Statut Membre Dernière intervention 21 octobre 2015
21 sept. 2013 à 14:20
Alors, ça m'a l'air bon mais je n'ai rien changer dans mon fichier d'upload php, j'ai juste modifier la partie script dans mon fichier index:

celui que tu viens de me donner à la place de celui que tu m'avais donner au début:
<script type="text/javascript">
var gif = document.getElementById("gif");
var sub = document.getElementById("sub");
var check = document.getElementById("check");
function verif() {
if (check.checked) {
gif.style.display = "block";
return true;
}
else{
alert("vous devez accepter");
return false;}
}
</script>

Et ça m'a tout l'air de fonctionner et je n'ai rien eu a changer comme tu l'avais mis dans mon fichier upload php.

Par contre peut-on rajouter en plus de l'image gif, du texte pendant l'hébergement ?

Merci d'avance, et encore merci pour tout ce que tu as fait !
0
salut, pour le texte il suffit de mettre une balise <p id="text"></p>

et dans le js :

<script type="text/javascript">
var gif = document.getElementById("gif");
var sub = document.getElementById("sub");
var check = document.getElementById("check");
var text = document.getElementById("text");
function verif() {
if (check.checked) {
gif.style.display = "block";
text.innerHTML = "patientez";
return true;
}
else{
alert("vous devez accepter");
return false;}
}
</script>
--
׺°"~'"°º×]|I{*------» m3745p10!7 «------*}I|[׺°"~'"°º×
0
florianlp Messages postés 72 Date d'inscription mercredi 15 février 2012 Statut Membre Dernière intervention 21 octobre 2015
22 sept. 2013 à 03:57
Et bien ça fonctionne nickel, je te remercie beaucoup pour ton aide !
0