Undefined index

Ciao ragazzi! ancora una volta mi trovo costretto a chiedere aiuto a voi.

Innanzitutto posto il codice di uno script molto semplice:

<html><head>
  <title>prova</title>
</head>
<body>
<br>
<br>
<br>
<br>
 <br>
<?php
  echo"<center>
         <form action=\"eleva.php\" method=\"post\">
         <input name=\"base\" type=\"text\"><br>
         <form action=\"eleva.php\" method=\"post\">
         <input name=\"esp\" type=\"text\"><br>
         <input name=\"submit\" value=\"invia\" type=\"submit\"></form>
    </center>";
$a = $_POST['base'];
$b = $_POST['esp'];
   echo bcpow( $a, $b , 2 );
?>
   </body>
</html>

assunti due valori refresha la pagina e stampa il risultato ottenuto dall'elevamento di $a a $b

quel che non capisco è questo errore:

- Notice: Undefined index: base on line 20

- Notice: Undefined index: esp on line 21

come mai?

p.s. lo script non funge  :-X

inviato 8 anni fa
Newbie
X 0 X

presupponendo che questa pagina si chiama eleva.php

avevi messo due form...

e non è necessario creare il form in php...

<html><head>
  <title>prova</title>
</head>
<body>
<br>
<br>
<br>
<br>
 <br>
<center>
<form action="eleva.php" method="post">
       <input name="base" type="text"><br>
       <input name="esp" type="text"><br>
       <input name="submit" value="invia" type="submit">
</form>
    </center>
<?php
$a = $_POST['base'];
$b = $_POST['esp'];
   echo bcpow( $a, $b , 2 );
?>
   </body>
</html>
risposto 8 anni fa
arkant
X 0 X

avevo già provato così, ma l'errore notice persiste  :-\

lo script però funziona;

per ovviare all'errore cosa si potrebbe fare?

risposto 8 anni fa
Newbie
modificato 8 anni fa
X 0 X

l'errore te lo da quando esegui la prima volta lo script perchè effettivamente ancora

$_POST['base'] e $_POST['esp'] non esistono...

se vuoi ovviare alla cosa fai un controllo sulla loro esistenza tipo :

<html><head>
  <title>prova</title>
</head>
<body>
<br>
<br>
<br>
<br>
 <br>
<center>
<form action="eleva.php" method="post">
       <input name="base" type="text"><br>
       <input name="esp" type="text"><br>
       <input name="submit" value="invia" type="submit">
</form>
    </center>
<?php

if ((isset($_POST['base'])) && (isset($_POST['esp']))){
$a = $_POST['base'];
$b = $_POST['esp'];
   echo bcpow( $a, $b , 2 );}
?>
   </body>
</html>
risposto 8 anni fa
arkant
X 0 X

grazie mille per le dritte ;)

risposto 8 anni fa
Newbie
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda