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

Discussione: Problema con die()

  1. #1

    Problema con die()

    ciao a tutti, ho un grosso problema con questa maledetta funzione... vi spiego il problema:
    ho una form dove faccio fare degli http upload, richiamo con un <div> la pagina check.php dove dentro ho questo ciclo di controllo:

    codice:
    <? 
    		  //check per estensione file
    	$check=explode(".",$img1_name);
    		$upp=strtoupper($check[1]);
    		//check se esiste gia' il file
    		if($handle = opendir('various/')){
    			while (false !== ($file = readdir($handle))) {
    				if($file == $img1_name){ 
    					?><p class="style5">File gia presente!
    </p>
    					<?
    				 die();
    				}
    			}     }
    					echo "post:".$_POST["invia"];
    					echo "img1:".$img1;
    					echo "upp:".$upp;
    					echo "check:".$check[0];
    						if ($upp == "JPG" or $upp == "GIF"){
    							echo $img1_name;
    							echo $chacek;
    							//upload
    							if ($img1_name != "") {       
    		        					@copy("$img1" , "various/$img1_name")                   
    	                					or die("Couldn't Upload Your File.");
    									      } 
    							else {
    				       				die("No File Specified");
    				   			     }
    				   			}
    				   			else {die("Estensione non valida!");
    								  }
    				   			     //creazione file di commenti
    					$nome_file = explode(".", $img1_name);
    					$perc="various/".$nome_file[0].".txt";
    					touch($perc);
    					$handle=fopen($perc,"w");
    					fwrite($handle,"$comment"); 
    					fclose($handle);?>
    					<p class="style5">File inserito correttamente!
    
                    grazie <? echo($userdata['username'])?> per aver inserito immagine.</p> 
    
    ecco il mio problema: utilizzando la funzione die() mi esce correttamente dal ciclo interessato ma non va avanti a costruirmi la pagina! ho utilizzato il <div> con la funzione include ma niente.. si ferma anche la pagina madre... come posso risolvere?? vorrei almeno capire cosa posso utilizzare al posto di questo die....  :bhò:  :bhò: 
    
    grazie a tutti!

  2. #2
    Quel codice che hai postato rendilo una funzione ed eseguila dal file principale.
    In questo modo, all'occorrenza di un die() la funzione si bloccherà ma il resto dello script andrà avanti.

    ciao
    Marco Bianucci
    marco@phoenixweb.it
    Hosting php
    Programmazione & WebDesign

  3. #3
    quindi tu mi dici di farne una funzione nel file che ora richiama con include() questo check??

    P.S. come faccio a renderla una funzione?? e come la richiamo?? sto cercando di capire come funzioni il php.... i'm newbie con tanta voglia di imparare

  4. #4
    Utente bannato
    Registrato dal
    Apr 2003
    Messaggi
    1,119
    fai
    Codice PHP:
    function nomefunzione()
    {
    //codice...


  5. #5
    Ho riletto meglio il tuo post.
    Il problema nasce dal fatto, come ben hai scritto, che tronchi lo script con DIE() prima di completare la struttura.

    Hai alcune vie che puoi percorrere:

    - puoi 'giocare' (non che sia così divertente...!) con le graffe, in maniera tale da organizzare bene il codice e la gestione degli errori.

    - crei una funzione di errore che richiami anzichè il die, funzione di errore che ovviamente ha la struttura grafica appropriata.


    - organizzi gli errori creando una flag ed effettuando controlli.


    Ciao!
    Marco Bianucci
    marco@phoenixweb.it
    Hosting php
    Programmazione & WebDesign

  6. #6
    Originariamente inviato da phoenixweb
    Ho riletto meglio il tuo post.
    Il problema nasce dal fatto, come ben hai scritto, che tronchi lo script con DIE() prima di completare la struttura.

    Hai alcune vie che puoi percorrere:

    - puoi 'giocare' (non che sia così divertente...!) con le graffe, in maniera tale da organizzare bene il codice e la gestione degli errori.

    - crei una funzione di errore che richiami anzichè il die, funzione di errore che ovviamente ha la struttura grafica appropriata.


    - organizzi gli errori creando una flag ed effettuando controlli.


    Ciao!
    eheheheh, rispondo ad ogni punto:

    - giocare con le graffe e' dura... non ci sono riuscito dopo 2 giorni di insulti...

    - creare una funzione di errore che generi il resto della pagina mi sembra che appesantisca un po' troppo il tutto, dato che sto facendo questo lavoro su un box centrale, e quindi dovrei fargli riprocessare il footer e la parte destra della pagina...

    - quella del flag... uhm... questa potrei pensarla... potrei provare ad implementarla...

    ora provo con una funzione di check come mi hai indicato tu... una sola cosa.. alla funzione ovviamente dovro' passargli il file da processare.. vediamo come gira... grazie per le risposte.. se non dovessi riuscirci... vedro' di rompervi ancora un pochino.. grazi!!

  7. #7
    Rompi rompi :-)
    Marco Bianucci
    marco@phoenixweb.it
    Hosting php
    Programmazione & WebDesign

  8. #8
    ok, allora continuo.... ho fatto la funzione nella pagina dove deve fare il check... l'ho dichiarata come function check($img) con il codice che ho messo sopra.... come la richiamo?? (sorry per la mia ignoranza!!!) ora ho fatto cosi':

    Codice PHP:
    <?php echo $risult=check($img1_name); ?>
    sia con che senza l'echo... e mi da' questo errore:

    Parse error: parse error, unexpected $ in /web/htdocs/www.infosito.info/home/upload.php on line 471

    dove ovviamente la riga 471 e' la fine del .php ... lo so che e' una cazzata.... dove sbaglio??

  9. #9
    Devi fare così:

    Codice PHP:
    <?php 

    $risult
    =check($img1_name);

    echo 
    $risult;

    ?>
    Marco Bianucci
    marco@phoenixweb.it
    Hosting php
    Programmazione & WebDesign

  10. #10
    ...e' quello che ho provato a fare ora... ma nada... sempre quell'errore... una domandina.. la funzione la posso mettere dentro o fuori dall'head indifferentemente?? (P.S. ho provato anche cosi')...

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.