script non va bene, dove è l'errore?

crimissima

Nuovo Utente
13 Gen 2013
3
0
0
Ciao a tutti,
ho appena cominciato con js, ho seguente script (esercizio).
dichiaro la classe in php, che fa il calcolo di due numeri. in una funzione js viene creato l'oggetto nuovo, poi richiamo la funzione che fa la somma e dopo viene richiamata l'altra funzione che con un alert stampa la somma.
non discutete per favore lo scopo dello script ma aiutatemi capire perchè non va. :confused:

Grazie mille! :o
PHP:
<body>
<SCRIPT>
function stampa_somma(miavar){
window.alert("Somma da qui= " + miavar);
}
</SCRIPT>


<?php 
$c = 45;
$d = 100;

class A{
	public $numero1 = 5;
	public $numero2 = 1;
	
	public function __construct($numero1,$numero2){
		$this->numero1 = $numero1;
		$this->numero2 = $numero2;	
	}	
	public function somma(){
		$fai_somma = $this->numero1 + $this->numero2;
		return $fai_somma;
	}	
}

<script>
function stampa_somma(a,b){ 
	var a;
	var b;
	<?php 
	$a = "document.write(a);";
	$b = "document.write(b);";
	?>	
	var recupero_dati = "<?php $stampa = new A($a,$b);$stampa->somma();?>"	; 
	document.write(fai_somma2(recupero_dati));
}

document.write(stampa_somma(<?php echo $c;?>,<?php echo $d;?>)); 
</script>
</body>
 
Ultima modifica di un moderatore:
Ciao,
hai dimenticato di chiudere il tag php (?>) prima del secondo <script>
la funzione fai_somma2() non è dichiarata di conseguenza va in errore
Codice:
document.write(fai_somma2(recupero_dati));

cerca di formattare il codice quando posti ci sono delle icone apposta sulla barra di formattazione
 
correggo il codice postato prima

Immagino che non fa quello di cui ho bisogno perchè mischio 2 linguaggi server e client side, ma no so come si fa correttamente. qualcuno può darmi una dritta?! Grazie!
HTML:
<body>
<SCRIPT>
function fai_somma2(miavar){
window.alert("Somma da qui= " + miavar);
}
</SCRIPT>
<?php 
$c = 45;
$d = 100;
class A{
    public $numero1 = 5;
    public $numero2 = 1;
    
    public function __construct($numero1,$numero2){
        $this->numero1 = $numero1;
        $this->numero2 = $numero2;    
    }    
    public function somma(){
        $fai_somma = $this->numero1 + $this->numero2;
        return $fai_somma;
    }    
}
?>
<script>
function stampa_somma(a,b){ 
    var a;
    var b;
    <?php 
    $a = "document.write(a);";
    $b = "document.write(b);";
    ?>    
    var recupero_dati = "<?php $stampa = new A($a,$b); echo $stampa->somma();?>"    ; 
    document.write(fai_somma2(recupero_dati));
}

document.write(stampa_somma(<?php echo $c;?>,<?php echo $d;?>)); 
</script>
</body>
 
Ultima modifica di un moderatore:
Ho risolto così!

HTML:
<SCRIPT>
function fai_somma2(miavar){
var miavar;
window.alert("Somma da qui= " + miavar);
}
</script>

<?php 
$c = 45;
$d = 100;

class A{
	public $numero1 ;
	public $numero2 ;
	
	public function __construct($numero1,$numero2){
		$this->numero1 = $numero1;
		$this->numero2 = $numero2;	
	}
	
	public function somma(){
		$fai_somma = $this->numero1 + $this->numero2;
		return $fai_somma;
		
	}	
}
$stampa = new A($c,$d);
$risultato =  $stampa->somma();
?>


<script>
fai_somma2('<?php echo $risultato?>');

</script>
 
Ultima modifica di un moderatore:

Discussioni simili