problema con pagina con più scopi

ciao vorrei sapere se questo script è giusto o sbagliato

<html>

<head>

 <title>pagina esempio</title>

</head>

<body>

<?php if (!isset($_GET['name'])):  ?>

<!-- Nessun nome è stato assegnato, per cui lo richiediamo all'utente -->

<form action="<php echo $_SERVER['PHP_SELF'];?>" method="get">

<label> Please enter your name:

<input type="text" name="name" /></label>

<input type="submit" value="go" />

</form>

<?php else: ?>

<p> Your Nane: <?php echo $_GET['name']; ?> </p>

    <p>This Pragrah contains a

    <a href="newpga.php?name=<?php echo urlencode($_GET['name']);?>">link</a>

    that passes the  name variable on to the text document.</p>

    <?php endif;?>

</body>

</html>

quando vado a provarlo ed inserisco il nome e clicco su go

la pagina che mi appare è questa

Forbidden

You don't have permission to access /<php echo $_SERVER['PHP_SELF']; on this server.

 :bye:

inviato 8 anni fa
scooby941
X 0 X

la pagina ha come estensione ".php"? PHP è installato correttamente?

risposto 8 anni fa
Gianni Tomasicchio
X 0 X

Credo di si finora non ho avuto problemi con php tutti i test fatti sono sempre andati senza problemi:

 con questo scritp va tranquillamente:

<html>

<head>

 <title>welcome 8</title>

    <link rel="stylesheet" type="text/css" href="css/style1.css">

</head>

<body>

<?

$vill = $_REQUEST["vill"];

$via=$_REQUEST["via"];

  $firstname = $_REQUEST["firstname"];

$lastname = $_REQUEST["lastname"];

$myTextArea=$_REQUEST["myTextArea"];

if(  ($firstname=="xxxx" or $lastname=="xxxx") and $via=="diaz" and $vill=="xxxx"    )

{ print"<span class=\"testo3\">Benveuto $firstname  $lastname ci fa piacere che sei tornato </span><br />";

}

else{print"<span class=\"testo3\">benvenuto nel mio sito $firstname $lastname </span><br />"; }

print" <span class=\"testo3\">la tua città è $vill</span><br />";

print"<span class=\"testo3\">abiti in $via</span><br />";

print"<span class=\"testo3\">le tue osservazioni: $myTextArea </span><br />";

?>

</body>

</HTML>

mentre con quello che ti ho messo prima mi da quel errore

 :bye:

risposto 8 anni fa
scooby941
modificato 8 anni fa
X 0 X

Ok, hai dimenticato il punto interrogativo:

<form action="<php echo $_SERVER['PHP_SELF'];?>" method="get">

 :bye:

risposto 8 anni fa
Gianni Tomasicchio
X 0 X

scusa Gianni ma dove ? ho provato a fare un copia in colla dal tuo è il risultato nn cambia

 :bye:

risposto 8 anni fa
scooby941
X 0 X

ho riportato la riga da cambiare, che deve diventare così:

<form action="<?php echo $_SERVER['PHP_SELF'];?>" method="get">

 :bye:

risposto 8 anni fa
Gianni Tomasicchio
X 0 X

Grazie Gianni risolto non avevo proprio visto che mancava il punto di domanda ? :P

solo una cosa sto seguendo degli esempi ma non ho ancora ben capito lo scopo di questa pagina :)

 :bye:

risposto 8 anni fa
scooby941
X 0 X

lo script, un po' bruttino, mostra prima un form e poi ripresenta i dati immessi dall'utente. Per capire se si tratta della prima o della seconda visualizzazione verifica la presenza della variabile $_GET['name']

 :bye:

risposto 8 anni fa
Gianni Tomasicchio
X 0 X

sto seguendo gli esempi di un libro non dico il titolo  per nn fare pubblicità occulta, anche perchè ho provato a non inserire nulla e cmq vado alla pagina, di else quindi di fatto non mi risolve al fine pratico di controllo vero e proprio...

ma se volessi fare in modo di fare un controllo sui dati inseriti in un form come dovrei fare?

non guardare i tag html sono in maiuscolo me li mette il programma e li nn li riscritti in piccolo  :P

ma avendo un form come questo :

HTML>

<HEAD>

 <TITLE>benvenuto sette</TITLE>

 <link

 <link rel="stylesheet" type="text/css" href="css/style1.css">

</HEAD>

<BODY>

 <table width="300">

 <form action="welcome8.php" method="post">

   <tr>

   <td><label> <span class="testo3">first name:</span></td>

   <td><input type="text" name="firstname" /></label>

   </tr>

   <tr>

   <td><label><span class="testo3"> last name:</td>

   <td><input type="text" name="lastname" /></label>

   </tr>

   <tr>

   <td><label> città:</td>

   <td><input type="text" name="vill" /></label>

   </tr>

    <td><label> via:</td>

   <td><input type="text" name="via" /></label>

   </tr>

   <tr>

      <td>Text Area :</td><td><textarea name="myTextArea" rows="4"

                   value=""

            cols="20"></textarea></span> </td>

      </tr>

   <tr>

   <td><input type="submit" value="go" /><td><input type="reset" value="cancella" />

   </tr>

   </form>

 </table>

</BODY>

</HTML>

come posso verificare che la persona inserisca dei dati?

la pagina in php è la seguente

html>

<head>

 <title>welcome 8</title>

    <link rel="stylesheet" type="text/css" href="css/style1.css">

</head>

<body>

<?

$vill = $_REQUEST["vill"];

$via=$_REQUEST["via"];

  $firstname = $_REQUEST["firstname"];

$lastname = $_REQUEST["lastname"];

$myTextArea=$_REQUEST["myTextArea"];

if(  ($firstname=="xxxx" or $lastname=="xxxx") and $via=="xxx" and $vill=="xxxx"    )

{ print"<span class=\"testo3\">Benveuto $firstname  $lastname ci fa piacere che sei tornato </span><br />";

}

else{print"<span class=\"testo3\">benvenuto nel mio sito $firstname $lastname </span><br />"; }

print" <span class=\"testo3\">la tua città è $vill</span><br />";

print"<span class=\"testo3\">abiti in $via</span><br />";

print"<span class=\"testo3\">le tue osservazioni: $myTextArea </span><br />";

?>

</body>

</html>

ciao grazie

 :bye:

risposto 8 anni fa
scooby941
X 0 X

i dati inseriti dall'utente li recuperi così:

$vill = $_REQUEST["vill"];

$via=$_REQUEST["via"];

$firstname = $_REQUEST["firstname"];

$lastname = $_REQUEST["lastname"];

$myTextArea=$_REQUEST["myTextArea"];

quindi per verificarne il contenuto bastano degli IF:

if(!$firstname) {

   echo "non hai inserito il nome!";

}

risposto 8 anni fa
Gianni Tomasicchio
X 0 X

ciao gianni grazie ho provato ad aggiungere if come mi hai detto è funziona :) :bye:

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