What am i doing wrong here?
firstpage.php
<html>
<body>
<?php
if (!isset($_GET['error']))
$error=array();
else
$error = $_GET['error'];
?>
<script>
function clearText(field){
if (field.defaultValue == field.value) field.value = '';
else if (field.value == '') field.value = field.defaultValue;
}
</script>
<?php
foreach($error as $key => $value){
if ($value != '')
echo '<p style="color:red;">', $value, '</p>';
}
?>
<form method="GET" action="validar.php">
First Name: <input type="text" name="firstname" value="first name here" onFocus="clearText(this)" onBlur="clearText(this)"> <br>
Last Name: <input type="text" name="lastname" value="last name here" onFocus="clearText(this)" onBlur="clearText(this)"> <br><br>
<input type="submit" value="SEND">
</form>
</body>
</html>
secondPage.php
<?php
# confirmation.php
$firstname = $_GET['firstname'];
$latname = $_GET['lastname'];
?>
<html>
<body>
<h3>Congratulations <?php echo $firstname; $lastname; ?>, you have been successfully registered</h3>
</body>
</html>
validar.php
<?php
$firstname = $_GET['firstname'];
$lastname = $_GET['lastname'];
$error['firstname'] = '';
$error['lastname'] = '';
$firstPage = "firstPage.php";
$secondPage = "secondPage.php";
$server_dir = $_SERVER['HTTP_HOST'] . rtrim(dirname($_SERVER['PHP_SELF']), '/\\') . '/';
if($firstname == "first name here"){
$firstname == "";
$error['firstname'] = 'Please introduce firstname <br>';
}
if($lastname == "last name here"){
$lastname == "";
$error['lastname'] = 'Please introduce last <br>';
}
if($error == ''){
$query_string = '?firstname=' . $firstname;
header('Location: http://' . $server_dir . $secondPage . $query_string);
}
else {
$query_string = http_build_query($error);
header('Location: http://' . $server_dir . $firstPage . $query_string);
}
?>
ERROR MESSAGE: Access Denied! I'm new to PHP, so i dont know how to build a query string with multiple fields error. I'm doing with with an array with key as "field value" cause i think its easier. But i'm not this is the best approach, and even if it is, i'm not sure im doing this good. Any help would be appreciated, John
header()
calls'Location: http://' . $server_dir . $firstPage . $query_string
tto be sure that it is a valid URL and is going to where you expect it to go