Jump to content

Undefined Index


hoggieaston

Recommended Posts

hi guys,

 

I have a form which allows me to update my database with the inputted values, the form works and it updates my database, however I have these error messages all over my webpage

 

Notice: Undefined index: title in C:\xampp\htdocs\CS2410\add_dvd.php on line 12

 

Notice: Undefined index: category in C:\xampp\htdocs\CS2410\add_dvd.php on line 13

 

Notice: Undefined index: quantity in C:\xampp\htdocs\CS2410\add_dvd.php on line 14

 

Notice: Undefined index: price in C:\xampp\htdocs\CS2410\add_dvd.php on line 15

 

Notice: Undefined index: bar_code in C:\xampp\htdocs\CS2410\add_dvd.php on line 16

 

the code is below

 

<?php
session_start();
// a security measure, if unautherised users attempt to directly access the page they are redirected to the index page
if (!($_SESSION['autherised']== true)) {
    header("Location:index.php");
}
//make a connection to the server or terminate the script if a connection cannot be estabilshed
$svc = @mysql_connect("localhost","root") or die ('unable to connect to server'.' '.mysql_error());
//make a connection to the databaes or terminate the script if a connection cannot be estabilshed
$dbc = @mysql_select_db("aston_shopdb",$svc) or die ('unable to connect to database'.' '.mysql_error());
  
  $nameofdvd = $_POST['title'];
  $categoryofdvd = $_POST['category'];
  $quantity = $_POST['quantity'];
  $dvdprice = $_POST['price'];
  $bar_id = $_POST['bar_code'];

$sql = "INSERT INTO item SET Title='$nameofdvd', Category='$categoryofdvd', Quantity='$quantity', Price='$dvdprice', Bar_code='$bar_id'";
if (@mysql_query($sql)) {
    echo('<p>New DVD added</p>');
  } else {
    echo('<p>Error adding new dvd: ' . mysql_error() . '</p>');
  }         
?>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <link rel="stylesheet" type="text/css" href="aston-shop-scheme.css" />
        <title>Add a New DVD</title>
    </head>

<form action="<?=$_SERVER['PHP_SELF']?>" method="post">
<p>Enter the new DVD:<br />
Title: <input type="text" name="title" size="20" maxlength="255"
  /><br />
Category: <input type="text" name="category" size="20" maxlength="255"
  /><br />
Quantity: <input type="text" name="quantity" size="20" maxlength="255"
  /><br />
Price: <input type="text" name="price" size="20" maxlength="255"
  /><br />
Barcode: <input type="text" name="bar_code" size="20" maxlength="255"
/><br />  
<input type="submit" name="submit" value="SUBMIT" /></p>
</form>

<table class ="standard" >
            <tr>
                <td> <input  type ="button" class="input" onClick ="location.href='all_products.php'" value ="View all products"> </td>

            </tr>
            <tr>
               <td> <input type ="button" onclick ="location.href='Logout.php'" value ="Log out"> <td>
            </tr>

        </table>




</body>
</html>

 

please help!!!

 

nick

 

 

MOD EDIT: code tags added.

Link to comment
https://forums.phpfreaks.com/topic/246545-undefined-index/
Share on other sites

You have no logic in place to check whether the form has actually been submitted before attempting to access the values in the post array. Enclose e the processing code in a conditional statement.

<?php
if( strtolower($_SERVER['REQUEST_METHOD']) === 'post' ) {
// process form 
}

Link to comment
https://forums.phpfreaks.com/topic/246545-undefined-index/#findComment-1265976
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • 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.