Visualizzazione dei risultati da 1 a 7 su 7

Discussione: [PHP]Undefined offset

  1. #1

    [PHP]Undefined offset

    Ciao a tutti,
    ho questo codice per scorrere un array che contiene le righe di una query
    Codice PHP:
    if(isset($_SESSION['righe'])){
        
    $rows $_SESSION['righe'];
        
    $n count($rows);
        echo(
    $n);
        for (
    $i=0$i<=count($rows); $i++) {
         echo(
    $rows[$i]);
                }

    solo che mi da l'errore:
    Notice: Undefined offset: 0 in C:\Gestione\GestIncas\ricCercaCli.php on line 21

    che non capisco... perchè l'array dovrebbe essere popolato...
    :tongue:

  2. #2

    Re: [PHP]Undefined offset

    Originariamente inviato da piccolanomade
    Ciao a tutti,
    ho questo codice per scorrere un array che contiene le righe di una query
    Codice PHP:
    if(isset($_SESSION['righe'])){
        
    $rows $_SESSION['righe'];
        
    $n count($rows);
        echo(
    $n);
        for (
    $i=0$i<=count($rows); $i++) {
         echo(
    $rows[$i]);
                }

    solo che mi da l'errore:
    Notice: Undefined offset: 0 in C:\Gestione\GestIncas\ricCercaCli.php on line 21

    che non capisco... perchè l'array dovrebbe essere popolato...
    sara' perche' $rows e' una variabile e non un array...

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  3. #3

    mmmmmmmmmmhhhhhh

    ma se non fosse un array non potrei applicarci la funzione Count() che in questo caso mi restituisce '3'... ($n)

    :tongue:

  4. #4

    Re: mmmmmmmmmmhhhhhh

    Originariamente inviato da piccolanomade
    ma se non fosse un array non potrei applicarci la funzione Count() che in questo caso mi restituisce '3'... ($n)

    Questo lo puoi sapere solo tu se e' o no un array. Count su una variabile conta 1 e non ha senso usarla. Qundi allora il problema e' che count() inizia da 1, mentre tu inizi da zero e vai fino a 3. quindi ne conti 4 e l'ultimo non c'e'.

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  5. #5

    su quello hai ragione...

    ma ora non vedo più nessun dato
    in una pagina ho:
    Codice PHP:
    while ($row mysql_fetch_array($result)) {
               
    $arrayRis[$row['IdCli']] = $row;
    }
    $_SESSION['righe'] = $arrayRis;
    header("Refresh: 1;URL=../mappaCliente.php?viewTabRis=y"); 
    e nell'altra pagina:
    Codice PHP:
    if(isset($_SESSION['righe'])){
        
    $rows $_SESSION['righe'];
        
    $n count($rows);
        echo(
    $n);
        for (
    $i=0$i $n$i++) {
            echo(
    $i);
          
    $riga $_SESSION['righe'][$i];
            echo(
    "riga; ".$riga);
            echo(
    "<tr id=\"".$riga['IdCli']."\">"); 
          echo(
    "<td>".$riga['Cognome']."</td>");
          echo(
    "<td>".$riga['Nome']."</td>");
          echo(
    "<td>".$riga['LocRes']."</td>");
          echo(
    "<td>");
            if (
    $riga['Tel']== ""){
                if (
    $riga['Cell']!= ""){
                    echo(
    $riga['Cell']);
                }
            } else {
                 echo(
    $riga['Tel']);
            }
            echo(
    "</td>  </tr>");
        }

    Io quello che voglio fare è "solo" passare in sessione il risultato della quary in modo da usarlo sull'altra pagina per impaginare la tabella con tutti i dati.
    Magari c'è un'altro modo più semplice... ma nn sono riuscita a trovarlo...
    :tongue:

  6. #6

    trovato trovato

    sono un po' rinco io...

    quando ho costruito l'arrey gli ho dato come indice l'IDCLI che a secondo della quary cambia e sicuramente non è sequenziale... il che il ciclo for non c'entra niente... quindi ho modificato l'assegnazione dell'array con:

    Codice PHP:
    $arrayRis[] = $row
    invece che:
    Codice PHP:
    $arrayRis[$row['IdCli']] = $row
    :tongue:

  7. #7
    entrando nella pagina fai un print_r di $_SESSION per vedere fino a che profondita' arrivi con l'array.

    codice:
    <?php
    session_start();
    echo "<pre>";
    print_r($_SESSION);

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

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.