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

Discussione: Undefined offset

  1. #1
    Utente di HTML.it
    Registrato dal
    May 2005
    Messaggi
    15

    Undefined offset

    Scusate la mia ignoranza in materia.
    Eseguendo il file php mi viene restituita questa
    Notice: Undefined offset:
    Sapete dirmi dove potrebbe essere l'errore.

  2. #2
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,361
    Usi il posto di un array che non è stato definito ( che non si trova mai a sinistra del segno = )

    Ad esempio :
    codice:
    if ($arrayUno['pippo'] == 'pluto') {
    
    }
    fa scattare il notice perche $arrayUno['pippo'] non è settato

    mentre :
    codice:
    $arrayUno['pippo'] = 'caio';
    ...
    if ($arrayUno['pippo'] == 'pluto') {
    
    }
    non dà nessun notice perche $arrayUno['pippo'] è valorizzato.
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2005
    Messaggi
    15
    Io avrei inizializzato il mio vettore in questo modo:

    codice:
    $vettore_temp= array();
    				
    $vettore_parole= array_pad($vettore_temp, 10, "");
    e l'errore me lo segnala alla riga di codice:

    codice:
    $temp_2 = $vettore_parole[2];

  4. #4
    e se nella definizione di $vettore_temp provi a inserire almeno un valore? del tipo

    $vettore_temp= array("");

    $vettore_parole= array_pad($vettore_temp, 10, "");

  5. #5
    Utente di HTML.it
    Registrato dal
    May 2005
    Messaggi
    15
    Grazie per il consiglio ma niente da fare.

    Hai qualche altra soluzione?

  6. #6
    no purtroppo no, sinceramente non ho mai usato array_pad, ma un classico


    codice:
    $vettore_temp= array();
    $vettore_parole= array();
    for (i=0;i<10;i++) $vettore_parole[$i]="";
    dovrebbe andare.

  7. #7
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,361
    L'esempio fornito da nella79 funziona ( ho error_reporting su E_ALL ).

    Posta + codice.
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  8. #8
    Utente di HTML.it
    Registrato dal
    May 2005
    Messaggi
    15
    L'esempio è corretto
    ma l'errore di offset me lo da comunque.
    Anche se esegue l'algoritmo senza problemi.

    Cosa potrebbe essere?

  9. #9
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,361
    Originariamente inviato da nella79
    L'esempio è corretto
    ma l'errore di offset me lo da comunque.
    Anche se esegue l'algoritmo senza problemi.

    Cosa potrebbe essere?
    Ci vuole più codice.
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  10. #10
    Utente di HTML.it
    Registrato dal
    May 2005
    Messaggi
    15
    Quella che segue è una parte del codice che compilata dà l'errore di cui parlavo.


    codice:
    <?php
    
    $IP_Address = "";
    
    $handle_frasi = fopen($IP_Address . "provalm.txt", "r");	// apro il file in lettura
    
    $temp_0 = "";
    $temp_1 = "";
    $temp_2 = "";
    $temp_3 = "";
    $temp_4 = "";
    
    $frase_temp = strtolower(fgets($handle_frasi));
    $frase = substr($frase_temp, 0, strrpos($frase_temp, "\r\n"));	
    		
    $vettore_temp = array("");
    //le frasi contenute nel file non superano mai le 9 parole
    $vettore_parole = array_pad($vettore_temp, 10, "");	
    			while(!feof($handle_frasi)and(strcmp($frase, "")!= 0)){
    				
    	$frase_temp = strtolower(fgets($handle_frasi));
    	$frase = substr($frase_temp, 0, strrpos($frase_temp, "\r\n"));
    	$numero_parole = str_word_count($frase);
    	$vettore_parole = str_word_count($frase, 1); 
    	$parte_finale = "";
    	for ($i = 3; $i < $numero_parole; $i++) {
    		$parte_finale .= $vettore_parole[$i] . " ";
    	}
    	$temp_0 = $vettore_parole[0];	
    	$temp_1 = $vettore_parole[1];
    	$temp_2 = $vettore_parole[2];
    	$temp_3 = $parte_finale;	
    }
    		
    fclose($handle_frasi);


    ?>

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.