richiamare una funzione da un'altra funzione

gandalf1959

Utente Attivo
21 Nov 2013
208
1
18
Buongiorno,
questo è sicuramente un problema di facile soluzione...
Ho un form, cliccando sul bottone richiamo la funzione codicesconto(), all'interno della quale richaimo una funzioncina che genera un codice casuale di 12 caratteri.
Peccato che il risultato della funzione richiamata non ci sia...
Ecco il codice della pagina:
PHP:
<?php
session_start();
//se non c'è la sessione registrata
if (!$_SESSION['autorizzato']) {
  echo "<h1>Area riservata, accesso negato.</h1>";
  echo "Per effettuare il login clicca <a href='index.php'><font color='blue'>qui</font></a>";
  die;
}
 
//Altrimenti Prelevo il codice identificatico dell'utente loggato

$cod = $_SESSION['cod']; //id cod recuperato nel file di verifica



function codicecasuale($l = 12) {

    $chars  = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
    $stringa = '';

    for ($i = 0; $i < $l; $i++)
        $stringa .= $chars[rand(0, strlen($chars) - 1)];
    
    return $stringa;
}

?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Emissione codici di sconto</title>
<link href="backoffice.css" rel="stylesheet" type="text/css" />


</head>

<body>


	<div id="esiste" class="testoPiccolo">
		Ciao <? echo "$cod"; ?>,<br>
		indica di seguito la percentuale di sconto che desideri<br>
		e il numero di persone che saranno in grado di fruire dello sconto.
		<br><br>

		<hr>

		<p>&nbsp;</p>


		<form name="form_sconto" method="POST" action="<?php echo $_SERVER['PHP_SELF']; ?>">
			Percentuale di sconto: <input type="text" name="percentuale" size="5">%<br><br>
			Codice sconto valido per <input type="text" name="utilizzo" size="5"> volte<br><br>
			<input type="submit" name="emetti" value=" EMETTI IL CODICE ">
		</form>


		<?

		if (isset($_POST['emetti'])) {
			codicesconto();
		}

		function codicesconto() {
			$percento = $_POST['percentuale'];
			$numero = $_POST['utilizzo'];

			codicecasuale();

			$codice = $stringa;

			echo "<p>Questo è il codice valido per " . $numero . " utilizzi,<br>ciascuno dei quali godrà di uno sconto del " . $percento . "%"
. " sull'acquisto di un corso di cucina: " . $codice . "</p>";

		}


		?>


	</div>




</body>
</html>

Perchè la variabile $codice non mi viene valorizzata?
Dove ho sbagliato?
Grazie per l'aiuto
 

gandalf1959

Utente Attivo
21 Nov 2013
208
1
18
SCUSATE...
Ho risolto... improvvisamente mi sono ricordato delle variabili globali... sapevo che ea una stupidaggine, ma stamattina ho il cervello che funziona a rilento.
allego il codice funzionante:
PHP:
<?php
session_start();
//se non c'è la sessione registrata
if (!$_SESSION['autorizzato']) {
  echo "<h1>Area riservata, accesso negato.</h1>";
  echo "Per effettuare il login clicca <a href='index.php'><font color='blue'>qui</font></a>";
  die;
}
 
//Altrimenti Prelevo il codice identificatico dell'utente loggato

$cod = $_SESSION['cod']; //id cod recuperato nel file di verifica

$makepass = "";

function codicecasuale() {

$length = 12;
$salt = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ012345678';
$len        = strlen($salt);
global $makepass;
mt_srand(10000000*(double)microtime());
	for ($i = 0; $i < $length; $i++) {
        $makepass .= $salt[mt_rand(0,$len - 1)];
        }
    
return $makepass;

}

?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Emissione codici di sconto</title>
<link href="backoffice.css" rel="stylesheet" type="text/css" />


</head>

<body>


	<div id="esiste" class="testoPiccolo">
		Ciao <? echo "$cod"; ?>,<br>
		indica di seguito la percentuale di sconto che desideri<br>
		e il numero di persone che saranno in grado di fruire dello sconto.
		<br><br>

		<hr>

		<p>&nbsp;</p>


		<form name="form_sconto" method="POST" action="<?php echo $_SERVER['PHP_SELF']; ?>">
			Percentuale di sconto: <input type="text" name="percentuale" size="5">%<br><br>
			Codice sconto valido per <input type="text" name="utilizzo" size="5"> volte<br><br>
			<input type="submit" name="emetti" value=" EMETTI IL CODICE ">
		</form>


		<?

		if (isset($_POST['emetti'])) {
			codicesconto();
		}

		function codicesconto() {
			$percento = $_POST['percentuale'];
			$numero = $_POST['utilizzo'];
			global $makepass;

			codicecasuale();

			echo "<p>Questo è il codice valido per " . $numero . " utilizzi,<br>ciascuno dei quali godrà di uno sconto del " . $percento . "%"
. " sull'acquisto di un corso di cucina: " . $makepass . "</p>";

		}


		?>


	</div>




</body>
</html>
 
Discussioni simili
Autore Titolo Forum Risposte Data
C richiamare una funzione in un altro script php PHP 1
gandalf1959 richiamare una funzione: funziona solo la seconda volta... PHP 7
I richiamare una funzione senza click Javascript 3
A richiamare un'immagine su una nuova funzione PHP 0
A Richiamare una pagina php in una funzione javascript Ajax 2
A Richiamare una funzione Javascript Javascript 1
M Richiamare una singola funziona da file php PHP 2
S [PHP] Aiuto! Non riesco a richiamare una variabile PHP 2
T Richiamare il click su un input type="image" alla pressione del tasto invio su una text area. PHP 0
elpirata Richiamare un campo input in una form Javascript 2
P Problema per richiamare una variabile... PHP 3
P come richiamare una variabile PHP 3
G Richiamare una classe Sviluppo app per iOS 0
M Richiamare una foto dal database PHP 3
M Richiamare una data inserita nel database tramite php. PHP 4
P creare e richiamare una stored procedure in sqlserver .NET Framework 1
B Richiamare un array in una classe PHP 7
P problema: dichiarare e richiamare variabili all'interno di una classe PHP 2
V si può richiamare una script jquery in automatico? jQuery 1
E richiamare id diversi da una database PHP 3
C Come richiamare una function di controllo Javascript 0
G utilizzo variabile per richiamare una pagina Ajax 1
S Richiamare una scena Flash 3
M Richiamare funziona da file esterno jQuery 0
psicomia Gestione funzione in javascript in tabella richiamare"textarea" valori preimpostati in "select" Javascript 2
V [Visual Basic] Richiamare funzione su modulo per restituire list Visual Basic 0
T [Javascript] Richiamare un file.js (iframe) in html Javascript 1
A Richiamare funzioni esterne JS da PHP PHP 9
A [Flash] richiamare JS da AS3 Flash 0
G [PHP] RICHIAMARE TABELLA I CUI VALORI SONO STAMPATI A VIDEO E MODIFICARLI PHP 6
Shyson [WordPress] Richiamare nel mio sito numero iscritti da gruppo Facebook WordPress 0
A [Javascript] richiamare lo pseudo elemento after Javascript 1
B [Javascript] Richiamare un attributo DATA Javascript 0
E Richiamare funzione Jquery dopo aggiornamento parziale di pagina tramite ajax jQuery 0
Z richiamare codice html in file php PHP 2
B richiamare variabile javascript su pagina php Javascript 4
M [Datetimepicker]Richiamare funzione per più id uguali jQuery 4
G Richiamare funzioni esterne PHP 0
K richiamare 2 volte stessa funzione Javascript 1
Shyson Richiamare funzione esterna jQuery 4
P 2 hosting da richiamare con dominio e sottodominio Hosting 0
scatenato richiamare id PHP 28
gandalf1959 Richiamare un javascript da php. Non funziona? PHP 2
I richiamare dati da menu a tendina mysql PHP 2
L problema nel richiamare gli id HTML e CSS 2
A richiamare funzione javascript dopo login in popup. Javascript 0
I richiamare dati da database in due variabili differenti PHP 2
L Non riesco a far funzionare un plugin (probabilmente ho sbagliato qualcosa nel richiamare lo script) jQuery 10
I Richiamare funzione jquery all'invio del form php Javascript 6
R [Vb.net] richiamare funzione javascirpt .NET Framework 0

Discussioni simili