2 classes differentes dans 1 formulaire

Messages postés
24
Date d'inscription
samedi 21 juin 2003
Statut
Membre
Dernière intervention
24 mars 2008
- - Dernière réponse : DrAgOnLORdS
Messages postés
24
Date d'inscription
samedi 21 juin 2003
Statut
Membre
Dernière intervention
24 mars 2008
- 3 févr. 2006 à 17:58
Salut a tous,

Voila mon souci, je voudrais utiliser deux classes differentes dans le mem formulaire.

la premiere classe (formulaire) et la deuxieme (upload)

je fais ca comme ca
$test =new form();
mes champs text etc ...

$test->$upload = new upload();
$test->$upload->upload_dir(mon dir);
$test->$upload->rename_file();

mon probleme se situe, au niveau de l'appel de la deuxieme classe ... c'est cette deuxieme classe qui devrait afficher les champs file du form et executer l'upload ...
mais rien ne s'affiche et je n'ai aucune erreur php ....

merci de votre aide ...
Afficher la suite 

10 réponses

Messages postés
10844
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
17
0
Merci
Hello,

il faudrait voir tes classes.
Mais cette façon de faire me parait étrange...
Commenter la réponse de malalam
Messages postés
24
Date d'inscription
samedi 21 juin 2003
Statut
Membre
Dernière intervention
24 mars 2008
0
Merci
ce ne sont pas mes classes :)

mais voila comment elles sont consituées ...

un fichier form.class.php class form
un fichier upload.class.php class file_upload
un fichier multi.php dans lequel il y a class multi extends file_upload

j'ai changé
class file_upload extends form

Le pire c'est que je n'ai aucune erreur ...
Commenter la réponse de DrAgOnLORdS
Messages postés
10844
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
17
0
Merci
class file_upload extends form...? Ah
Alors faut instancier file_upload, et pas form.

$test = new file_upload();
tes champs text etc ...

$test-> upload_dir(mon dir);
$test-> rename_file();

Mais t'es sûr de ce que tu fais...? Et c'est du php5 ou du 4?
Pourquoi tu ne gardes pas séparées les 2 classes, comme elles le sont à l'origine ?
Commenter la réponse de malalam
Messages postés
24
Date d'inscription
samedi 21 juin 2003
Statut
Membre
Dernière intervention
24 mars 2008
0
Merci
bah je peux garder les deux classes séparées mais le probleme c'est que la classe upload n'affiche pas les champs file,

il faut creer un formulaire pour avoir les champs, alors avec la classe form j'affiche les champs file ...
Commenter la réponse de DrAgOnLORdS
Messages postés
10844
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
17
0
Merci
oui....et alors ?
Fais voir tes classes.
Commenter la réponse de malalam
Messages postés
24
Date d'inscription
samedi 21 juin 2003
Statut
Membre
Dernière intervention
24 mars 2008
0
Merci
euh ... il y a plus de 600 lignes dans la classe form et un peu moins dans l'autre ...

il y a un moyen de mettre les fichiers ici ? a part afficher ? :-)
Commenter la réponse de DrAgOnLORdS
Messages postés
24
Date d'inscription
samedi 21 juin 2003
Statut
Membre
Dernière intervention
24 mars 2008
0
Merci
euh ... il y a plus de 600 lignes dans la classe form et un peu moins dans l'autre ...

il y a un moyen de mettre les fichiers ici ? a part afficher ? :-)
Commenter la réponse de DrAgOnLORdS
Messages postés
24
Date d'inscription
samedi 21 juin 2003
Statut
Membre
Dernière intervention
24 mars 2008
0
Merci
voila ce que je tente mais sans succes, les champs file sont marque comme requis ...

$prod = new ClasseForm("Add Products");
$prod->valTailleStd(30);
$prod->ajoutChampSelect("Choose Product Type", "type", true);
$prod->valChampOption1Vide("Select");
while($d = mysql_fetch_array($sq))
{
$prod->valChampOptions(array($d['id']=>$d['name_en']));
}
$prod->ajoutChampText("Model Name","model","alphanum",true,3);
$prod->ajoutChampTextarea("Description DE ", "descDE", "", true);
$prod->valChampDescro("qsjfgqjsdgkfjgqsdjfkjgqsgdfkjgq");
$prod->ajoutChampTextarea("Description EN", "descEN", "", true);
$prod->ajoutChampTextarea("Description FR", "descFR", "", true);
$prod->ajoutChampFile("Infos Product file","upload[]");
$prod->ajoutChampFile("Manual Product file","upload[]");
$prod->ajoutChampFile("List Parts Product file","upload[]");

$rprod = $prod->afficher();
if($rprod):
//echo $_POST['descDE'];
$multi_upload = new muli_files;
$multi_upload->upload_dir = "../products/"; // "files" is the folder for the uploaded files (you have to create this folder)
$multi_upload->extensions = array(".jpg", ".zip"); // specify the allowed extensions here
$multi_upload->tmp_names_array = $_FILES['upload']['tmp_name'];
$multi_upload->names_array = $_FILES['upload']['name'];
$multi_upload->error_array = $_FILES['upload']['error'];
$multi_upload->upload_multi_files();
endif;
Commenter la réponse de DrAgOnLORdS
Messages postés
10844
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
17
0
Merci
Ouais mais comme je ne sais pas comment fonctionne tes classes...
difficile de t'aider vraiment :-(
Tu les as trouvées où?
Commenter la réponse de malalam
Messages postés
24
Date d'inscription
samedi 21 juin 2003
Statut
Membre
Dernière intervention
24 mars 2008
0
Merci
la classe formulaire ici -> http://www.aidejavascript.com/article106.html

et la class upload sur http://www.phpclasses.org sont nom est easy-upload une classe toute recente sur le site
Commenter la réponse de DrAgOnLORdS