Javascript en C - non interprete - cgi

Fermé
jpelini Messages postés 3 Date d'inscription lundi 11 juin 2007 Statut Membre Dernière intervention 12 juin 2007 - 12 juin 2007 à 10:05
jpelini Messages postés 3 Date d'inscription lundi 11 juin 2007 Statut Membre Dernière intervention 12 juin 2007 - 12 juin 2007 à 10:15
Bonjour tout le monde. c'est la 2em fois que je post mon probleme mais j'ai l'impression qu'il n'a pas ete pris en compte la premiere fois. Donc je recommence.

J'essaie de faire en sorte de pouvoir uploader autant de fichier joints que l'on veut sur un site web. J'ai un code qui fonctionne ds une page html classique : un bouton "ajouter un autre fichier" qui cree une ligne, etc...

Quand je le passe en C sous la forme

fprintf( cgiOut ,  "<head>\n");

fprintf(  cgiOut, "<script language=\"javascript\">\n");

fprintf( cgiOut, "function create_champ(i)\n");
fprintf( cgiOut, "{\n");
fprintf( cgiOut, "var i2 = i + 1;\n");

fprintf(  cgiOut, "document.getElementById('input_'+i).innerHTML = '<div id=champs_'+i+'>Produit '+i+' : <input type=file name=upload'+i+'> </div></span>';\n");
fprintf(  cgiOut,  "document.getElementById('input_'+i).innerHTML += (i <= 10000) ? '<span id=input_'+i2+'><input class=input2 type=button onClick=create_champ('+i2+')' value=Insérer un autre champ></span>' : '';\n");
fprintf(  cgiOut, "}\n");
fprintf(  cgiOut, "</script>\n");

fprintf( cgiOut , "</head>\n");
fprintf( cgiOut , "<body>\n");
fprintf( cgiOut , "<form name=ajoutfichier>\n");
fprintf( cgiOut , "  <div id=champs_1>\n");
fprintf( cgiOut , "    Produit 1 :\n");
fprintf( cgiOut , "      <input name=upload1 type=file>\n");
fprintf( cgiOut , "   </div>\n");
fprintf( cgiOut , "  </div>\n");
fprintf( cgiOut , "  <div align=left> <span id=input_2>\n");
fprintf( cgiOut , "    <input name=button type=button class=input2 onClick=js.create_champ(2) value=Inserer_un_autre_champ>\n");
fprintf( cgiOut , "    </span>\n");
fprintf( cgiOut , "</div>\n");
fprintf( cgiOut , "</form>\n");
fprintf( cgiOut , "</body>\n");


he ben le boutton est inactif... et je ne vois pas du tout pourquoi!!

MERCI D'AVANCE POUR VOTRE AIDE

2 réponses

Jean-François Pillou Messages postés 18707 Date d'inscription lundi 15 février 1999 Statut Webmaster Dernière intervention 16 février 2023 63 272
12 juin 2007 à 10:10
Les valeurs des attributs HTML doivent être entourées de guillemets :

fprintf( cgiOut , "</head>\n");
fprintf( cgiOut , "<body>\n");
fprintf( cgiOut , "<form name=ajoutfichier>\n");
fprintf( cgiOut , "  <div id=\"champs_1\">\n");
fprintf( cgiOut , "    Produit 1 :\n");
fprintf( cgiOut , "      <input name=\"upload1\" type=\"file\">\n");
fprintf( cgiOut , "   </div>\n");
fprintf( cgiOut , "  </div>\n");
fprintf( cgiOut , "  <div align=\"left\"> <span id=\"input_2\">\n");
fprintf( cgiOut , "    <input name=\"button\" type=\"button\" class=\"input2\" onClick=\"js.create_champ(2)\" value=\"Inserer_un_autre_champ\">\n");
fprintf( cgiOut , "    </span>\n");
fprintf( cgiOut , "</div>\n");
fprintf( cgiOut , "</form>\n");
fprintf( cgiOut , "</body>\n");
jpelini Messages postés 3 Date d'inscription lundi 11 juin 2007 Statut Membre Dernière intervention 12 juin 2007
12 juin 2007 à 10:15
Merci de ta reponse Jeff, malheureusement le probleme n'a pas change... je soupcone la partie "script" (ou alors le bouton) de ne pas agir. Car lorsque je joint un fichier (dans l'unique case qui apparaisse) ca marche (j'veux dire j'peux l'envoyer le fichier joint...)