Jump to content

Form validation problem


waubain

Recommended Posts

I am building a hospital chart simulation for my pharmacy students and I am trying to learn PHP. Today is form validation. The following form has only one input. I have tried to piece together examples I find and from readings. The function works if the student leaves the input null, but does not catch any other errors and passes them to the next form as typed. The Patient ID is a 6 digit numeric between 100000 and 999999 and the 'patientid' will eventually be placed in a MySQL query to see if a patient with that number exists, but one question at a time. Thanks for any help.

 

<?php

session_start();

if (isset($_POST['submit']))

{

$patient_id = check_input($_POST['patient_num'], "Enter Patient ID");

$_SESSION['patientid'] = $patient_id;

header('Location: pt_found.php');

exit();

}

?>

<!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>

<title>Patient Call Form</title>

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

</head>

 

<body>

<form name="patientfindform" action="#" method="post">

<div>

<label>Patient ID:</label>

<input type="text" name="patient_num" /><br />

</div>

 

<div>

<label> </label>

<input type="submit" name="submit" value="Find Patient" /><br />

 

</div>

</form>

<script>

type="text/javascript">

document.patientfindform.patient_num.focus();

</script>

</div>

</body>

</html>

<?php

function check_input ($data, $problem='')

{

$data = trim($data);

$data = stripslashes($data);

$data = htmlspecialchars($data);

if ($problem && strlen($data)== 0)

{

die($problem);

}

return $data;

}

?>

Link to comment
Share on other sites

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.