[php] transférer sur le serveur 2 fichiers
sylvain
-
Reivax962 Messages postés 3672 Date d'inscription Statut Membre Dernière intervention -
Reivax962 Messages postés 3672 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous,
Je ne parviens pas à transférer sur le serveur 2 fichiers en même tps, seulement un seul est transféré. Je ne vois pas de problèmes.
Voici mon code:
<tr><td><B>Insérer le CV : </B></td>
<td><input type="file" name="cv"></td>
</tr>
<tr><td><B>Insérer la lettre de motivation : </B></td>
<td><input type="file" name"lettremotiv"></td>
</tr>
if (isset($_FILES['cv']))
{
$codeerreurcv = $_FILES['cv']['erreur'];
}
if (isset($_FILES['cv']))
{
if ($codeerreurcv == UPLOAD_ERR_OK)
{
// Le fichier a bien été transmis
$cv = $_FILES['cv'];
$extensioncv = strrchr($_FILES['cv']['name'], '.');
$candidat = ExecRequete ("Select * From Candidat Where codecand=$codecand",$connexion);
while($cand = ObjetSuivant($candidat))
{
$nomcand = $cand->nomcand;
copy($cv['tmp_name'], "./CV/cv$codecand$nomcand$extensioncv");
$updateliencv = "UPDATE Candidat SET liencv=CONCAT('cv','$codecand','$nomcand','$extensioncv') "
. " WHERE codecand=$codecand";
ExecRequete ($updateliencv, $connexion);
}
}
else
{
// Une erreur quelque part
switch ($codeerreurcv)
{
case UPLOAD_ERR_NO_FILE:
echo "Vous avez oublié de transmettre le fichier !?\n";
break;
case UPLOAD_ERR_INI_SIZE:
echo "Le fichier dépasse la taille max. autorisée par PHP";
break;
case UPLOAD_ERR_PARTIAL:
echo "Le fichier a été transféré partiellement";
break;
default:
echo "Ne doit pas arriver!!!";
}
}
}
if (isset($_FILES['lettremotiv']))
{
$codeerreurlettremotiv = $_FILES['lettremotiv']['erreur'];
}
if (isset($_FILES['lettremotiv']))
{
if ($codeerreurlettremotiv == UPLOAD_ERR_OK)
{
// Le fichier a bien été transmis
$lettremotiv = $_FILES['lettremotiv'];
$extensionlettremotiv = strrchr($_FILES['lettremotiv']['name'], '.');
echo "<B>Nom du fichier client :<B> " . $lettremotiv['name'] . "<BR>\n";
echo "<B>Nom du fichier serveur :<B> " .$lettremotiv['tmp_name'] . "<BR>\n";
echo "<B>Taille du fichier :<B> " . $lettremotiv['size'] . "<BR>\n";
echo "<B>Type du fichier :<B>\n" . $lettremotiv['type'] . "<BR>\n";
$candidat1 = ExecRequete ("Select * From Candidat Where codecand=$codecand",$connexion);
while($cand1 = ObjetSuivant($candidat1))
{
$nomcand1 = $cand1->nomcand;
copy($lettremotiv['tmp_name'], "./lettremotiv/lm$codecand$nomcand1$extensionlettremotiv");
$updatelienlettremotiv = "UPDATE Candidat SET lienlettremotiv=CONCAT('lm','$codecand','$nomcand1','$extensionlettremotiv') "
. " WHERE codecand=$codecand";
ExecRequete ($updatelienlettremotiv, $connexion);
}
}
else
{
// Une erreur quelque part
switch ($codeerreurlettremotiv)
{
case UPLOAD_ERR_NO_FILE:
echo "Vous avez oublié de transmettre le fichier !?\n";
break;
case UPLOAD_ERR_INI_SIZE:
echo "Le fichier dépasse la taille max. autorisée par PHP";
break;
case UPLOAD_ERR_PARTIAL:
echo "Le fichier a été transféré partiellement";
break;
default:
echo "Ne doit pas arriver!!!";
}
}
}</code>
Dans le formulaire, j'ai bien mis: ENCTYPE="multipart/form-data"
Si vous voyez une erreur, pourriez-vous m'aider.
merci.
PS: ExecRequete et ObjetSuivant sont des fonctions
Je ne parviens pas à transférer sur le serveur 2 fichiers en même tps, seulement un seul est transféré. Je ne vois pas de problèmes.
Voici mon code:
<tr><td><B>Insérer le CV : </B></td>
<td><input type="file" name="cv"></td>
</tr>
<tr><td><B>Insérer la lettre de motivation : </B></td>
<td><input type="file" name"lettremotiv"></td>
</tr>
if (isset($_FILES['cv']))
{
$codeerreurcv = $_FILES['cv']['erreur'];
}
if (isset($_FILES['cv']))
{
if ($codeerreurcv == UPLOAD_ERR_OK)
{
// Le fichier a bien été transmis
$cv = $_FILES['cv'];
$extensioncv = strrchr($_FILES['cv']['name'], '.');
$candidat = ExecRequete ("Select * From Candidat Where codecand=$codecand",$connexion);
while($cand = ObjetSuivant($candidat))
{
$nomcand = $cand->nomcand;
copy($cv['tmp_name'], "./CV/cv$codecand$nomcand$extensioncv");
$updateliencv = "UPDATE Candidat SET liencv=CONCAT('cv','$codecand','$nomcand','$extensioncv') "
. " WHERE codecand=$codecand";
ExecRequete ($updateliencv, $connexion);
}
}
else
{
// Une erreur quelque part
switch ($codeerreurcv)
{
case UPLOAD_ERR_NO_FILE:
echo "Vous avez oublié de transmettre le fichier !?\n";
break;
case UPLOAD_ERR_INI_SIZE:
echo "Le fichier dépasse la taille max. autorisée par PHP";
break;
case UPLOAD_ERR_PARTIAL:
echo "Le fichier a été transféré partiellement";
break;
default:
echo "Ne doit pas arriver!!!";
}
}
}
if (isset($_FILES['lettremotiv']))
{
$codeerreurlettremotiv = $_FILES['lettremotiv']['erreur'];
}
if (isset($_FILES['lettremotiv']))
{
if ($codeerreurlettremotiv == UPLOAD_ERR_OK)
{
// Le fichier a bien été transmis
$lettremotiv = $_FILES['lettremotiv'];
$extensionlettremotiv = strrchr($_FILES['lettremotiv']['name'], '.');
echo "<B>Nom du fichier client :<B> " . $lettremotiv['name'] . "<BR>\n";
echo "<B>Nom du fichier serveur :<B> " .$lettremotiv['tmp_name'] . "<BR>\n";
echo "<B>Taille du fichier :<B> " . $lettremotiv['size'] . "<BR>\n";
echo "<B>Type du fichier :<B>\n" . $lettremotiv['type'] . "<BR>\n";
$candidat1 = ExecRequete ("Select * From Candidat Where codecand=$codecand",$connexion);
while($cand1 = ObjetSuivant($candidat1))
{
$nomcand1 = $cand1->nomcand;
copy($lettremotiv['tmp_name'], "./lettremotiv/lm$codecand$nomcand1$extensionlettremotiv");
$updatelienlettremotiv = "UPDATE Candidat SET lienlettremotiv=CONCAT('lm','$codecand','$nomcand1','$extensionlettremotiv') "
. " WHERE codecand=$codecand";
ExecRequete ($updatelienlettremotiv, $connexion);
}
}
else
{
// Une erreur quelque part
switch ($codeerreurlettremotiv)
{
case UPLOAD_ERR_NO_FILE:
echo "Vous avez oublié de transmettre le fichier !?\n";
break;
case UPLOAD_ERR_INI_SIZE:
echo "Le fichier dépasse la taille max. autorisée par PHP";
break;
case UPLOAD_ERR_PARTIAL:
echo "Le fichier a été transféré partiellement";
break;
default:
echo "Ne doit pas arriver!!!";
}
}
}</code>
Dans le formulaire, j'ai bien mis: ENCTYPE="multipart/form-data"
Si vous voyez une erreur, pourriez-vous m'aider.
merci.
PS: ExecRequete et ObjetSuivant sont des fonctions
A voir également:
- [php] transférer sur le serveur 2 fichiers
- Supercopier 2 - Télécharger - Gestion de fichiers
- Changer serveur dns - Guide
- Transférer message whatsapp - Accueil - WhatsApp
- Renommer des fichiers en masse - Guide
- Fichiers epub - Guide
3 réponses
Bonjour,
Pourrais-tu utiliser les balises <code> du forum afin que le code soit lisible ?
Désolé mais je n'arrive pas à voir l'alignement de tes accolades sans ça...
Xavier
Pourrais-tu utiliser les balises <code> du forum afin que le code soit lisible ?
Désolé mais je n'arrive pas à voir l'alignement de tes accolades sans ça...
Xavier
ok je remet le code:
<tr><td><B>Insérer le CV : </B></td> <td><input type="file" name="cv"></td> </tr> <tr><td><B>Insérer la lettre de motivation : </B></td> <td><input type="file" name="lettremotiv"></td> </tr> if (isset($_FILES['cv'])) { $codeerreurcv = $_FILES['cv']['erreur']; } if (isset($_FILES['cv'])) { if ($codeerreurcv == UPLOAD_ERR_OK) { // Le fichier a bien été transmis $cv = $_FILES['cv']; $extensioncv = strrchr($_FILES['cv']['name'], '.'); $candidat = ExecRequete ("Select * From Candidat Where codecand=$codecand",$connexion); while($cand = ObjetSuivant($candidat)) { $nomcand = $cand->nomcand; copy($cv['tmp_name'], "./CV/cv$codecand$nomcand$extensioncv"); $updateliencv = "UPDATE Candidat SET liencv=CONCAT('cv','$codecand','$nomcand','$extensioncv') " . " WHERE codecand=$codecand"; ExecRequete ($updateliencv, $connexion); } } else { // Une erreur quelque part switch ($codeerreurcv) { case UPLOAD_ERR_NO_FILE: echo "Vous avez oublié de transmettre le fichier !?\n"; break; case UPLOAD_ERR_INI_SIZE: echo "Le fichier dépasse la taille max. autorisée par PHP"; break; case UPLOAD_ERR_PARTIAL: echo "Le fichier a été transféré partiellement"; break; default: echo "Ne doit pas arriver!!!"; } } } if (isset($_FILES['lettremotiv'])) { $codeerreurlettremotiv = $_FILES['lettremotiv']['erreur']; } if (isset($_FILES['lettremotiv'])) { if ($codeerreurlettremotiv == UPLOAD_ERR_OK) { // Le fichier a bien été transmis $lettremotiv = $_FILES['lettremotiv']; $extensionlettremotiv = strrchr($_FILES['lettremotiv']['name'], '.'); echo "<B>Nom du fichier client :<B> " . $lettremotiv['name'] . "<BR>\n"; echo "<B>Nom du fichier serveur :<B> " .$lettremotiv['tmp_name'] . "<BR>\n"; echo "<B>Taille du fichier :<B> " . $lettremotiv['size'] . "<BR>\n"; echo "<B>Type du fichier :<B>\n" . $lettremotiv['type'] . "<BR>\n"; $candidat1 = ExecRequete ("Select * From Candidat Where codecand=$codecand",$connexion); while($cand1 = ObjetSuivant($candidat1)) { $nomcand1 = $cand1->nomcand; copy($lettremotiv['tmp_name'], "./lettremotiv/lm$codecand$nomcand1$extensionlettremotiv"); $updatelienlettremotiv = "UPDATE Candidat SET lienlettremotiv=CONCAT('lm','$codecand','$nomcand1','$extensionlettremotiv') " . " WHERE codecand=$codecand"; ExecRequete ($updatelienlettremotiv, $connexion); } } else { // Une erreur quelque part switch ($codeerreurlettremotiv) { case UPLOAD_ERR_NO_FILE: echo "Vous avez oublié de transmettre le fichier !?\n"; break; case UPLOAD_ERR_INI_SIZE: echo "Le fichier dépasse la taille max. autorisée par PHP"; break; case UPLOAD_ERR_PARTIAL: echo "Le fichier a été transféré partiellement"; break; default: echo "Ne doit pas arriver!!!"; } } }