Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14

Discussione: Help Perl vs HTML

  1. #1
    Utente di HTML.it
    Registrato dal
    Aug 2007
    Messaggi
    9

    Help Perl vs HTML

    Salve a tutti,
    ho un problemino che mi sta portando via giornate intere per risolverlo e volevo condividerlo con voi per trovare una soluzione.

    Ho l'esigenza di far chekkare con un bottone vari checkbox su una pagina web scritta in perl.
    Ho trovato in giro un javascript che mi consente di fare questo; se faccio una pagina html mi funziona se invece lo metto dentro un programmino Perl non funziona piu'

    Vi posto il listato sia in perlo che in html.

    Sapete dirmi dove e' che si incasina il tutto??
    Sono 2 giorni che mi controllo passo passo il listato e non trovo l'errore... mha.... sono distrutto ormai.

    Grazie a tutti
    Ciao
    Antonio

    PERL
    --------
    #!c:/Perl/bin/Perl.exe
    #
    use strict;
    use DBI qw(:sql_types);
    use CGI ':standard';
    use POSIX;
    my $version = 'ITALIA';
    my $max_records = 10;
    # NO Buffer dell' output
    select STDOUT;
    $| = 0;
    #

    print ( "Content-type: text/html\n\n" );
    print ( "<HTML> ");
    print ( "<head>");
    print ( "<script language=\"javascript\">");
    print ( "<!--");
    print ( "function CheckboxSeleziona_onclick() {");
    print ( "var ck = document.getElementById(\"table3\").getElementsByT agName(\"INPUT\");");
    print ( "for(var i = 0; i < 20; i++)");
    print ( "if(ck[i].type == \"checkbox\") ck[i].checked = true;");
    print ( "}");
    print ( "//-->");
    print ( "</script>");
    print ( "</head><body>");

    print ( "<TABLE BORDER=1 CELLPADDING=4 CELLSPACING=0 WIDTH=100\% BGCOLOR=\"#FFFFFF\" ALIGN=\"CENTER\">");
    print ("<TR><td align =\"center\"><input type=\"button\" value=\"SELECT ALL\" onClick=\"return CheckboxSeleziona_onclick()\"></td>");
    print ("<td align =\"center\"><input type=\"button\" value=\"DESELECT ALL\" onClick=\"return CheckboxDeSeleziona_onclick()\"/></td></tr></TABLE>");
    print ( "<TABLE BORDER=1 CELLPADDING=4 CELLSPACING=0 WIDTH=100\% BGCOLOR=\"#FFFFFF\" ALIGN=\"CENTER\">");
    print ("<TR><td align =\"center\"><input type=\"button\" value=\" MO \" onClick=\"javascript:history.back()\"></td>");
    print ("<td align =\"center\"><input type=\"button\" value=\" MT \" onClick=\"javascript:history.back()\"></td></tr></TABLE>");
    print ( "<TABLE id=\"table3\" BORDER=1 CELLPADDING=4 CELLSPACING=0 WIDTH=100\% BGCOLOR=\"#FFFFFF\" ALIGN=\"CENTER\">");

    print ("<TR><TD><input type=\"checkbox\" name=\"form_mi18\" value=MI18> MI 18</TD>");
    print ("<TD><input type=\"checkbox\" name=\"form_bo12\" value=BO12> BO 12</TD>");
    print ("<TD><input type=\"checkbox\" name=\"form_rm15\" value=RM15> RM 15</TD>");
    print ("<TD><input type=\"checkbox\" name=\"form_na08\" value=NA08> NA 08</TD>");
    print ("<TD><input type=\"checkbox\" name=\"form_mi22\" value=MI22> MI 22</TD></TR>");

    print ("<TR><TD><input type=\"checkbox\" name=\"form_mi19\" value=MI19> MI 19</TD>");
    print ("<TD><input type=\"checkbox\" name=\"form_bo13\" value=BO13> BO 13</TD>");
    print ("<TD><input type=\"checkbox\" name=\"form_rm16\" value=RM16> RM 16</TD>");
    print ("<TD><input type=\"checkbox\" name=\"form_na09\" value=NA09> NA 09</TD>");
    print ("<TD><input type=\"checkbox\" name=\"form_bo16\" value=BO16> BO 16</TD></TR>");

    print ("<TR><TD><input type=\"checkbox\" name=\"form_mi20\" value=MI20> MI 20</TD>");
    print ("<TD><input type=\"checkbox\" name=\"form_bo14\" value=BO14> BO 14</TD>");
    print ("<TD><input type=\"checkbox\" name=\"form_rm17\" value=RM17> RM 17</TD>");
    print ("<TD><input type=\"checkbox\" name=\"form_na10\" value=NA10> NA 10</TD>");
    print ("<TD><input type=\"checkbox\" name=\"form_rm19\" value=RM19> RM 19</TD></TR>");

    print ("<TR><TD><input type=\"checkbox\" name=\"form_mi21\" value=MI21> MI 21</TD>");
    print ("<TD><input type=\"checkbox\" name=\"form_bo15\" value=BO15> BO 15</TD>");
    print ("<TD><input type=\"checkbox\" name=\"form_rm18\" value=RM18> RM 18</TD>");
    print ("<TD><input type=\"checkbox\" name=\"form_na11\" value=NA11> NA 11</TD>");
    #print ("<TD><input type=\"checkbox\" name=\"form_rm20\" value=RM20> RM 20</TD>");
    print ("<TD><input type=\"checkbox\" name=\"form_na14\" value=NA14> NA 14</TD></TR>");
    print ( "</TABLE></BODY>");

    HTML
    ------------
    <HTML>
    <head>
    <script id="clientEventHandlersJS" language="javascript">
    <!--

    function CheckboxSeleziona_onclick() {
    var ck = document.getElementById("table3").getElementsByTag Name("INPUT");
    for(var i = 0; i < 20; i++)
    if(ck[i].type == "checkbox") ck[i].checked = true;
    }
    //-->
    </script>
    </head><body>

    <TABLE BORDER=1 CELLPADDING=4 CELLSPACING=0 WIDTH=100\% BGCOLOR="#FFFFFF" ALIGN="CENTER">


    <TR><td align ="center"><input type="button" value="SELECT ALL" onClick="return CheckboxSeleziona_onclick()"></td>
    <td align ="center"><input type="button" value="DESELECT ALL" onClick="return CheckboxSeleziona_onclick()"/></td></tr></TABLE>

    <TABLE BORDER=1 CELLPADDING=4 CELLSPACING=0 WIDTH=100\% BGCOLOR="#FFFFFF" ALIGN="CENTER">
    <TR><td align ="center"><input type="button" value=" MO " onClick="javascript:history.back()"></td>
    <td align ="center"><input type="button" value=" MT " onClick="javascript:history.back()"></td></tr></TABLE>



    <TABLE id="table3" BORDER=1 CELLPADDING=4 CELLSPACING=0 WIDTH=100\% BGCOLOR="#FFFFFF" ALIGN="CENTER">


    <TR><TD><input type="checkbox" name="form_mi18" value=MI18> MI 18</TD>
    <TD><input type="checkbox" name="form_bo12" value=BO12> BO 12</TD>
    <TD><input type="checkbox" name="form_rm15" value=RM15> RM 15</TD>
    <TD><input type="checkbox" name="form_na08" value=NA08> NA 08</TD>
    <TD><input type="checkbox" name="form_mi22" value=MI22> MI 22</TD></TR>

    <TR><TD><input type="checkbox" name="form_mi19" value=MI19> MI 19</TD>
    <TD><input type="checkbox" name="form_bo13" value=BO13> BO 13</TD>
    <TD><input type="checkbox" name="form_rm16" value=RM16> RM 16</TD>
    <TD><input type="checkbox" name="form_na09" value=NA09> NA 09</TD>
    <TD><input type="checkbox" name="form_bo16" value=BO16> BO 16</TD></TR>

    <TR><TD><input type="checkbox" name="form_mi20" value=MI20> MI 20</TD>
    <TD><input type="checkbox" name="form_bo14" value=BO14> BO 14</TD>
    <TD><input type="checkbox" name="form_rm17" value=RM17> RM 17</TD>
    <TD><input type="checkbox" name="form_na10" value=NA10> NA 10</TD>
    <TD><input type="checkbox" name="form_rm19" value=RM19> RM 19</TD></TR>

    <TR><TD><input type="checkbox" name="form_mi21" value=MI21> MI 21</TD>
    <TD><input type="checkbox" name="form_bo15" value=BO15> BO 15</TD>
    <TD><input type="checkbox" name="form_rm18" value=RM18> RM 18</TD>
    <TD><input type="checkbox" name="form_na11" value=NA11> NA 11</TD>
    <TD><input type="checkbox" name="form_na14" value=NA14> NA 14</TD></TR>
    </TABLE></BODY>
    ---------------------------
    Antonio

  2. #2
    prova a postare anche il codice HTML della pagina generata dal PERL.
    se vedi nero,
    spara a vista

  3. #3
    Utente di HTML.it
    Registrato dal
    Aug 2007
    Messaggi
    9
    Ciao OZZY,
    il codice perl l'ho messo prima di quello HTML.
    In pratica non faccio altro che fare dei print (" Codeice Html ");

    oppure mi chiedevi altro?
    Antonio

  4. #4
    Originariamente inviato da ziototo
    Ciao OZZY,
    il codice perl l'ho messo prima di quello HTML.
    In pratica non faccio altro che fare dei print (" Codeice Html ");

    oppure mi chiedevi altro?
    Due cose:

    • Quando inserisci del codice, inseriscilo usando i tag [ CODE ] o [ PHP ] (vedi esempio sotto).
    • Posso non capire perché hai usato perl? Dato che hai usato solo la funzione print potevi fare tutto in html senza usare un linguaggio di programmazione.


    Esempio di codice:
    codice:
    # Inserisco qui il codice

  5. #5
    Utente di HTML.it
    Registrato dal
    Aug 2007
    Messaggi
    9
    Originariamente inviato da panta1978
    Due cose:

    • Quando inserisci del codice, inseriscilo usando i tag [ CODE ] o [ PHP ] (vedi esempio sotto).
    • Posso non capire perché hai usato perl? Dato che hai usato solo la funzione print potevi fare tutto in html senza usare un linguaggio di programmazione.


    Esempio di codice:
    codice:
    # Inserisco qui il codice
    Gli errori del novello..... modifico il post con i tag giusti. (non posso farlo.. scaduti i 60 min)
    il perl l'ho usato perche' tutto il programma e' fatto in perl, quello che ho postato e' solo la parte relativa alla tabella che contiene i checkbox.
    in realta' il prog. e' molto piu' complesso deve accedere ad un db oracle per prelevare dei dati a seconda del riempimento del form e generare un output di log in una pagina html.
    Antonio

  6. #6
    Gli accapo "\n" che per il codice html sono solo un di più per js sono rilevanti, per cui così funziona:

    codice:
    #!c:/Perl/bin/Perl.exe
    #
    use strict;
    use DBI qw(:sql_types);
    use CGI ':standard';
    use POSIX;
    my $version = 'ITALIA';
    my $max_records = 10;
    # NO Buffer dell' output
    select STDOUT;
    $| = 0;
    #
    
    print ( "Content-type: text/html\n\n" );
    print ( "<HTML>\n ");
    print ( "<head>\n");
    print ( "<script language=\"javascript\">\n");
    print ( "<!--\n\n");
    print ( "function CheckboxSeleziona_onclick() {\n");
    print ( "var ck = document.getElementById(\"table3\").getElementsByTagName(\"INPUT\");\n");
    print ( "for(var i = 0; i < 20; i++)\n");
    print ( "if(ck[i].type == \"checkbox\") ck[i].checked = true;\n");
    print ( "}\n\n");
    print ( "//-->\n");
    print ( "</script>\n");
    print ( "</head><body>\n"); 
    
    print ( "<TABLE BORDER=1 CELLPADDING=4 CELLSPACING=0 WIDTH=100\% BGCOLOR=\"#FFFFFF\" ALIGN=\"CENTER\">\n");
    print ("<TR>\n<td align =\"center\"><input type=\"button\" value=\"SELECT ALL\" onClick=\"return CheckboxSeleziona_onclick()\"></td>\n");
    print ("<td align =\"center\"><input type=\"button\" value=\"DESELECT ALL\" onClick=\"return CheckboxDeSeleziona_onclick()\"/></td>\n</tr>\n</TABLE>\n");
    print ( "<TABLE BORDER=1 CELLPADDING=4 CELLSPACING=0 WIDTH=100\% BGCOLOR=\"#FFFFFF\" ALIGN=\"CENTER\">\n");
    print ("<TR><td align =\"center\"><input type=\"button\" value=\" MO \" onClick=\"java-script:history.back()\"></td>\n");
    print ("<td align =\"center\"><input type=\"button\" value=\" MT \" onClick=\"java-script:history.back()\"></td></tr></TABLE>\n");
    print ( "<TABLE id=\"table3\" BORDER=1 CELLPADDING=4 CELLSPACING=0 WIDTH=100\% BGCOLOR=\"#FFFFFF\" ALIGN=\"CENTER\">\n");
    
    print ("<TR\n><TD><input type=\"checkbox\" name=\"form_mi18\" value=MI18> MI 18</TD>\n");
    print ("<TD><input type=\"checkbox\" name=\"form_bo12\" value=BO12> BO 12</TD>\n");
    print ("<TD><input type=\"checkbox\" name=\"form_rm15\" value=RM15> RM 15</TD>\n");
    print ("<TD><input type=\"checkbox\" name=\"form_na08\" value=NA08> NA 08</TD>\n");
    print ("<TD><input type=\"checkbox\" name=\"form_mi22\" value=MI22> MI 22</TD>\n</TR>\n");
    
    print ("<TR>\n<TD><input type=\"checkbox\" name=\"form_mi19\" value=MI19> MI 19</TD>\n");
    print ("<TD><input type=\"checkbox\" name=\"form_bo13\" value=BO13> BO 13</TD>\n");
    print ("<TD><input type=\"checkbox\" name=\"form_rm16\" value=RM16> RM 16</TD>\n");
    print ("<TD><input type=\"checkbox\" name=\"form_na09\" value=NA09> NA 09</TD>\n");
    print ("<TD><input type=\"checkbox\" name=\"form_bo16\" value=BO16> BO 16</TD>\n</TR>\n");
    
    print ("<TR>\n<TD><input type=\"checkbox\" name=\"form_mi20\" value=MI20> MI 20</TD>\n");
    print ("<TD><input type=\"checkbox\" name=\"form_bo14\" value=BO14> BO 14</TD>\n");
    print ("<TD><input type=\"checkbox\" name=\"form_rm17\" value=RM17> RM 17</TD>\n");
    print ("<TD><input type=\"checkbox\" name=\"form_na10\" value=NA10> NA 10</TD>\n");
    print ("<TD><input type=\"checkbox\" name=\"form_rm19\" value=RM19> RM 19</TD>\n</TR>\n");
    
    print ("<TR>\n<TD><input type=\"checkbox\" name=\"form_mi21\" value=MI21> MI 21</TD>\n");
    print ("<TD><input type=\"checkbox\" name=\"form_bo15\" value=BO15> BO 15</TD>\n");
    print ("<TD><input type=\"checkbox\" name=\"form_rm18\" value=RM18> RM 18</TD>\n");
    print ("<TD><input type=\"checkbox\" name=\"form_na11\" value=NA11> NA 11</TD>\n");
    #print ("<TD><input type=\"checkbox\" name=\"form_rm20\" value=RM20> RM 20</TD>");
    print ("<TD><input type=\"checkbox\" name=\"form_na14\" value=NA14> NA 14</TD>\n</TR>\n");
    print ( "</TABLE></BODY></HTML>\n");
    Marco Allegretti
    shishii@tiscalinet.it
    Lang: PERL, PHP, SQL.
    Linux user n° 268623 Fedora Core 10, Fedora Core 6, Debian Sarge on mips

  7. #7
    Utente di HTML.it
    Registrato dal
    Aug 2007
    Messaggi
    9
    Ciao shishii,
    sei un grande...... non avrei mai pensato ai \n !!!

    In realta' ho altre funzioni in js ma effettivamente non interagiscono direttamente sulla pagina corrente ma ne aprono altre (tipo pagine di Help) e quelle anche senza i \n vanno bene.

    Cosi' funziona alla grande !!!!

    ti ringrazio del prezioso aiuto, ora posso continuare a lavorare.
    Ciao e grazie ancora
    Antonio

  8. #8
    Utente di HTML.it
    Registrato dal
    Aug 2007
    Messaggi
    9
    posso abusare ancora un po' della tua esperienza?

    Come hai potuto notare ho una serie di pulsanti uno che seleziona tutti e altri due che sono MO ed MT.
    ora se faccio seleziona tutti questi vengono selezionati perche' facenti parte della stessa table id ma se ne voglio selezionare solo alcuni (MO) come faccio??? non posso creare una table id con nome diverso perche' altrimetni non mi funzionerebbe piu' il pulsante select all.
    non so se mi sono spiegato bene... spero di si.

    Ciao
    Antonio

  9. #9
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Mi pare una domanda riguardante il JS, che quindi va rivolta nel forum corretto.

    Dovresti separare i due problemi: ne guadagni tu sia in tempo che in lavoro mentale e ne guadagna chi puo` aiutarti.
    Per i problemi lato client, dovresti postare il codice che arriva al browser. Quando visualizzi la pagina nel browser, clicca con il destro e seleziona "Vedi codice" (o simile, a seconda del browser). Poi analizza il codice, vedi se ci sono errori nel trasferimento dal server. Per i problemi lato client posta il codice lato client.
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  10. #10
    quello che dice Mich_ è giusto per cui copio la discussione in javascript.
    Marco Allegretti
    shishii@tiscalinet.it
    Lang: PERL, PHP, SQL.
    Linux user n° 268623 Fedora Core 10, Fedora Core 6, Debian Sarge on mips

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.