ciao a tutti raga! ho un problema urgente....veramente!
ho scritto questa pagina in php e devo passare un parametro dalla funzione upl_foto() a posizionamento(...).
ora che cosa accade: se non inserisco la funzione scrittura(...) con all'interno il form, ma richiamo direttamente tramite $_GET la funzione di posizionamento, quindi anche upl_foto(), viene passato il nome voluto tramite return di upl_foto(), mentre se richiamo prima scrittura(), poi col submit invoco posizionamento, ecc. , e il nome non viene più passato.... nn sò proprio come strecciarmi... aiuto! (ne va di un esame...) oppure avete qualche soluzione alternativa?
Grazie, ciao ciao
codice:
<?php
session_start();
header("Cache-control: private");
header("Expires: Mon,31 Dec 2000 01:00:00 GMT");
header("Cache-control: no-store");
//INSERISCE I COMANDI PER INIZIARE LA SESSIONE UTENTE!!!!
?>
<?php
include("../include/connect.php");

$db_conn = mysql_connect($HOST,$USER,$PASSWORD);

$db_sel = mysql_select_db($DB,$db_conn);

function scrittura($operaz,$tab,$mio_id,$id,$conness){
	//$mio_id indica il mio id, mentre $id quello del proprietario del blog dove mi trovo; se il blog è mio sarà il mio id
	$data = getdate();
	$prec = "Scrivi in quest'area";
	echo("<table><form name=\"composer\" action=\"./composer.php\" method=\"post\" enctype=\"multipart/form-data\" target=\"_self\">");
	/*echo("<tr><td colspan=\"3\"><h4>$tab: inserisci qui!</br><hr></h4></td></tr>");
	if($tab=="Blog"){echo("<tr><td>Titolo:</td><td colspan=\"2\"><input name=\"titolo\" type=\"text\" size=\"50\"></td></tr>");}
	if($tab=="Foto"){echo("<tr><td>Seleziona il file da importare:</td><td colspan=\"2\"><input name=\"immagine\" type=\"file\" ></td></tr>");}
	echo("<tr><td></td><td colspan=\"2\"></td></tr>");*/
	echo("<tr><td><input type=\"reset\" value=\"Resetta\"></td><td></td><td><input type=\"submit\" Value=\"Invia\"></td></tr>");
	echo("</form></table>");
	}

function upl_foto(){
	//cancella definitivamente un elemento unlink($_FILES[immagine][tmp_name]);
	//il nome reale dell'immagine lo estraggo con $nome_extr = substr($nome,3);
	$cartella = "../upload/";
	$id_rand = rand(100, 999);
	$nome = basename($_FILES['immagine']['name']);
	$c_nome = $id_rand . $nome;
	//$d_perc = $cartella . $c_nome;
	//chmod($_FILES['immagine']['tmp_name'],0777);
	//$trasf = move_uploaded_file($_FILES['immagine']['tmp_name'], $d_perc);
	return $c_nome;
}

function posizionamento($precomp,$DB,$tab,$conn){
		switch($tab){
			case Blog:
				mysql_query("INSERT INTO $DB.$tab (Titolo ,Autore ,DataOra ,Testo)VALUES ('$_POST[titolo]', '$_POST[mid]', '$_POST[data_ora]', '$_POST[content]');",$conn)  or die ("errore connessione db ".mysql_error());
				break;
			case Risposta:
				mysql_query("INSERT INTO $DB.$tab (Utente ,Blog ,DataOra ,Testo ,Visibilita ,Commento)VALUES ( '$_POST[mid]', '$_POST[id]', '$_POST[data_ora]', '$_POST[content]', '1', 'NULL');",$conn)  or die ("errore connessione db ".mysql_error());
				break;
			case Messaggio:
				if($precomp!="" || $precomp!=NULL){
					mysql_query("INSERT INTO $DB.$tab (Mitt ,Dest ,DataOra ,Testo)VALUES ( '$_POST[mid]', '$_POST[id]', '$_POST[data_ora]', '$precomp');",$conn)  or die ("errore connessione db ".mysql_error());
				}
				else{
					mysql_query("INSERT INTO $DB.$tab (Mitt ,Dest ,DataOra ,Testo)VALUES ( '$_POST[mid]', '$_POST[id]', '$_POST[data_ora]', '$_POST[content]');",$conn)  or die ("errore connessione db ".mysql_error());
				}
				break;
			case Foto:
				$nome = upl_foto();
				echo("$nome");
				$codifica = $_FILES['immagine']['type'];
				//mysql_query("INSERT INTO $DB.$tab (Nome ,Codifica ,Visibilita ,Commento)VALUES ( '$nome', '$codifica', '1', '$_POST[content]');",$conn)  or die ("errore connessione db ".mysql_error());
				break;
			default:
			//rivedere!!!!!
				visualizza($id,$conn);
				break;
		}		

}

function controllo($precomp,$operaz,$tab,$mio_id,$id,$conness,$DB){
	switch($operaz){
	case "inserisci":
		if($precomp=="" || $precomp==NULL){
			scrittura($operaz,$tab,$mio_id,$id,$conness);
		}
		else{
			posizionamento($precomp,$DB,$tab,$conness);
		}
		break;
	case "posiziona":
		posizionamento($precomp,$DB,$tab,$conness);
		break;
	case "cancella":
		
		break;
	}
}

//main della pagina
echo("<html><head><title></title></head><body>");
controllo($_REQUEST[precomp],$_REQUEST[operaz],$_REQUEST[tab],$_REQUEST[usr],$_REQUEST[id],$db_conn,$DB);
echo("</body></html>");
mysql_close($db_conn);
?>