Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    ODBC scorrere recordset

    Ciao ho uno strano problema:

    Codice PHP:
    use Win32::ODBC;

    my $db = new Win32::ODBC$DSN ) || die "Error: " Win32::ODBC::Error();
    $db->Sql($QuerySql);

    while( 
    $db->FetchRow() )
    {
         
    my @sotto_array $db->Data();             
         
         
    #CODICE FUNZIONANTE
         
    $i=0;         
          $
    $TabQueryHtml .= "<td>"$sotto_array[$i] ."</td>";         
          
    $i=1;
          $
    $TabQueryHtml .= "<td>"$sotto_array[$i] ."</td>";                           


         
    #CODICE ERRATO
         
    for $y(0..$#sotto_array) {             
              
    $$TabQueryHtml .= "<td>"$sotto_array[$y]  ."</td>";         
         }

    Il codice da problemi nella valutazione di $sotto_array[$y] se metto un numero al posto di $y viene eseguito correttamente atrimenti no.

    Grazie

  2. #2
    Codice PHP:
    #!c:/Perl/bin/perl.exe -w  
    $testo "table";  
    sub usb_FunzioneRiferimento(){     
       
    my $stringainterna = @_;     
       ${
    $stringainterna} = "pippo"
    }  

    &
    usb_FunzioneRiferimento(/\$testo); #lo slash è girato al contrario in quanto il codice postato nel forum viene cancellato

    print "Content-Type: text/html\n\n"
    print 
    $testo
    Sono riuscito ad isolare il problema sul passaggio per riferimento di una stringa.
    Questo codice da errore.

    Per gli array e gli hash basta mettere lo slash. Per la stringa?

    Grazie

  3. #3
    Ho scoperto il secondo problema.

    ----------------------------------------
    invece di:
    my $stringainterna = @_;
    ----------------------------------------
    bisogna mettere:
    my ($stringainterna) = @_;
    oppure
    my $stringainterna = shift;
    oppure
    my $stringainterna = @_[0];
    ----------------------------------------

  4. #4
    Ciao ho scoperto anche il primo problema:
    Codice PHP:
    while( $db->FetchRow() )
    {
         
    my @sotto_array $db->Data();             
         
         
    #CODICE FUNZIONANTE
         
    $i=0;         
          $
    $TabQueryHtml .= "<td>"$sotto_array[$i] ."</td>";         
          
    $i=1;
          $
    $TabQueryHtml .= "<td>"$sotto_array[$i] ."</td>";                           


         
    #CODICE FUNZIONANTE
         
    for $y(0..$#sotto_array) {
        
    if ($sotto_array[$y])
        {
            $
    $TabHtml .= "<td>$sotto_array[$y]</td>";
        }
        else
        {
            $
    $TabHtml .= "<td></td>";
        }                     
         }

    $sotto_array punta ad un recordset e quando trovava un campo null non riusciva a inserirlo nella stringa.


    Grazie a tutti :-)

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 © 2024 vBulletin Solutions, Inc. All rights reserved.