Jump to content

$_POST[] Help


jrm

Recommended Posts

I am having a small problem with one of my "isset()" statements.  Under "case 2", the third "if"statement, it will not goto the "else" part of the function. 

 

 

<?php
    include "InventoryFunctions.php";
    include_once "StaffNameFunc.php";
    include_once "MemberFunctions.php";
    
/*    require_once "./login/settings.php";
    include "MemberFunctions.php";
    include "DailyLogFunctions.php";


    checkLogin('1 2');
*/    $error = Null;

/*
`Inventory`.`Request`
  `RequestID` int(10) NOT NULL auto_increment,
  `StaffID` int(10) default NULL,
  `DTGRequest` datetime default NULL,
  `DTGCreated` timestamp NOT NULL default CURRENT_TIMESTAMP,
  `User` varchar(50) default NULL,
  `Computer` varchar(50) default NULL,
*/
    $StaffList = StaffList();
    if(isset($_POST["Form"]))
    {
        $tForm = (int)$_POST["Form"];
        $error = Null;
        switch($tForm)
        {
            case 1:
                if(isset($_POST["StaffName"]) and isset($_POST["Year"]) and isset($_POST["Month"]) and isset($_POST["Day"]))
                {
                    if(strlen($_POST["Year"])>4) $error = $error . " : " . " Check Year Format, incorrect number of numbers. ";
                    if(strlen($_POST["Month"])>2) $error = $error . " : " . " Check Month Format, incorrect number of numbers. ";
                    if(strlen($_POST["Day"])>2) $error = $error . " : " . " Check Day Format, incorrect number of numbers. ";

                    //$Time = strtotime($_POST["Time"]);
                    $DTG = mktime(0,0,0,$_POST["Month"],$_POST["Day"],$_POST["Year"]);
                    if(isset($error))
                    {
                        $Form = 1;
                    }
                    else
                    {
                        $user = 3;
                        $hostname = gethostbyaddr($_SERVER['REMOTE_ADDR']);
                        $Computer = $hostname . ":" . $_SERVER["REMOTE_ADDR"];
                        $ReqstID = startRequest($_POST["StaffName"],$DTG,$user,$Computer);
                        $Form = 2;
                        $Cats = getCategories();
                    }
                }
                else
                {
                    $Form = 1;
                }
                break;
            case 2:
                if(isset($_POST["ReqstID"]))
                {
                    $Cats = getCategories();
                    for($i = 0; $i <= count($Cats) - 1; $i++)
                    {
                        if(count($Cats[$i]["Products"])==1)
                        {
                            $i++;
                            break;
                        }
                        else
                        {
                            for($j = 0; $j <= count($Cats[$i]["Products"]) - 1; $j++)
                            {
                                if(isset($_POST["checkbox_" . $Cats[$i]["Products"][$j]["ProdID"] ]))
                                {
                                    if(isset($_POST["Qty_" . $Cats[$i]["Products"][$j]["Name"] ]))
                                    {
                                        $Request[] = array("ID" => $Cats[$i]["Products"][$j]["ProdID"],
                                                           "Name" => $Cats[$i]["Products"][$j]["Name"],
                                                           "Qty" => $_POST["Qty_" . $Cats[$i]["Products"][$j]["Name"]]);
                                        $Form = 2;
                                    }
                                    else
                                    {
                                        $error = $error . " : " . "Missing Quantity for :" . $Cats[$i]["Products"][$j]["Name"];
                                        $Form = 2;
                                    }
                                }
                                else
                                {
                                     $Form = 2;
                                }
                            }
                        }
                    }
                }
                else
                {
                    $Form = 1;
                }
                break;
        }
    }
    else
    {
        $Form = 1;
    }
?>
<html>
    <head>
        <link rel=stylesheet type="text/css" href="./themes/theme.css">
        <title>Hidalgo County Juvenile Boot Camp Intranet Access</title>
    </head>
    <body>
<?php if(isset($error)){ echo "\n<p>" . $error . "</p>\n";} ?>
        <form class="form" action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
            <input type="hidden" name="Form" value="<?php echo $Form; ?>" >
            <input type="hidden" name="ReqstID" value="<?php echo isset($ReqstID)?$ReqstID:Null;?>">
<?php
    switch($Form)
    {
        case 1:
?>
            <table width = 40% align = center>
                <tr>
                    <th colspan = 3> Date of Request </th>
                </tr>
                <tr>
                    <td width = 33%>
                        <label for="Year">Year</label>
                        <input type="text" name="Year" size=4 value="<?php echo (isset($_POST["Year"])?$_POST["Year"]: date("Y"));?>" >
                        <br>####
                    </td>
                    <td width = 33%>
                        <label for="Month">Month</label>
                        <input type="text" name="Month" size=2 value="<?php echo (isset($_POST["Month"])?$_POST["Month"]: date("m"));?>" >
                        <br>##
                    </td>
                    <td width = 33%>
                        <label for="Day">Day</label>
                        <input type="text" name="Day" size=2 value="<?php echo (isset($_POST["Day"])?$_POST["Day"]: date("d"));?>" >
                        <br>##
                    </td>
                </tr>
            </table>
            <select name="StaffName" value="<?php echo (isset($_POST["StaffName"])? $_POST["StaffName"] : "") ?>" >
<?php
            for($i=0; $i<=count($StaffList)-1; $i++)
            {
?>
            <option value="<?php echo $StaffList[$i]["StaffID"]; ?>"<?php if(isset($_POST["StaffName"])) echo (($_POST["StaffName"]==$StaffList[$i]["StaffID"])? "selected" : "");  ?> > <?php echo $StaffList[$i]["StaffName"]; ?></option>
<?
            }
?>
        </select>
        <br>
        <input type="submit"  name="submit" value="submit">
<?
            break;
        case 2:
            for($i = 0; $i <= count($Cats) - 1; $i++)
            {

                if(count($Cats[$i]["Products"])==1)
                {
?>          <table width = 100% align = center>
                <tr>
                    <th colspan=1><?php echo $Cats[$i]["Category"]; ?></td>
                </tr>
                <tr>
                    <td width = 100% align = center><?php echo "\n". $Cats[$i]["Products"];?></td>
                </td>
            </table>
            <br><hr><br>
<?
                }
                else
                {
?>
            <table width = 100% align = center>
                <tr>
                    <th colspan = 5><?php echo $Cats[$i]["Category"]; ?></th>
                </tr>
                <tr>
                    <td width = 10%><br></td>
                    <td width = 15%>Product Name</td>
                    <td width = 10%>Size of Product</td>
                    <td width = 10%>Shipment Size</td>
                    <td width = 15%>Quantity of Shipment Size</td>
                </tr>
<?
                    for($j = 0; $j <= count($Cats[$i]["Products"]) - 1; $j++)
                    {
?>
                <tr>
                    <td width = 5%>
                        <input type="checkbox" name="checkbox_<?php echo $Cats[$i]['Products'][$j]['ProdID']; ?>" >
                    </td>
                    <td width = 15%><?php echo $Cats[$i]["Products"][$j]["Name"]; ?></td>
                    <td width = 10%><?php echo $Cats[$i]["Products"][$j]["Size"];?></td>
                    <td width = 10%><?php echo $Cats[$i]["Products"][$j]["ShipSize"]?></td>
                    <td width = 15%><input type="text" name="Qty_<?php echo $Cats[$i]["Products"][$j]["Name"]; ?> " size=4 value="" ></td>
                </tr>
<?
                    }
?>
            </table>
            <br><hr><br>
<?
                }
            }
?>
            <input type="submit"  name="submit" value="submit">
<?
            if(isset($Request)) print_r($Request);
            break;
    }
?>
        </form>
    </body>
</html>

Link to comment
https://forums.phpfreaks.com/topic/129796-_post-help/
Share on other sites

Probably need to move this post to the php section.

 

But I still can not get it to check the $_POST["QTY_"...... correctly.  I did change the second if else statement so that it is checking for an array or not.

 

If if(isset($_POST["Qty_" . $Cats[]["Products"][]["Name"])) is false then return an error for that Product, and go to the next loop of the for($i=0;$i<=count($Cats[]["Products"])- 1; $i++). 

 

The output that I am getting is that $Request[] is being set and no quantity error is being reported, but an error of "Nothing Requested."

 

                if(isset($_POST["ReqstID"]))
                {
                    $Cats = getCategories();
                    for($i = 0; $i <= count($Cats) - 1; $i++)
                    {
                        if(is_array($Cats[$i]["Products"]))
                        {
                            for($j = 0; $j <= count($Cats[$i]["Products"]) - 1; $j++)
                            {
                                if(isset($_POST["checkbox_" . $Cats[$i]["Products"][$j]["ProdID"] ]))
                                {
                                    if(isset($_POST["Qty_" . $Cats[$i]["Products"][$j]["Name"] ]))
                                    {
                                        $Request[] = array("ID" => $Cats[$i]["Products"][$j]["ProdID"],
                                                           "Name" => $Cats[$i]["Products"][$j]["Name"],
                                                           "Qty" => $_POST["Qty_" . $Cats[$i]["Products"][$j]["Name"]]);
                                        $Form = 2;
                                    }
                                    else
                                    {
                                        $error = $error . " : " . "Missing Quantity for :" . $Cats[$i]["Products"][$j]["Name"];
                                        $Form = 2;
                                    }
                                }
                                else
                                {
                                    $Nothing = "Nothing";
                                }
                            }
                            if(isset($Nothing))
                            {
                                $error = $error . " : " . "Nothing Requested.";
                                $Form = 2;
                            }
                        }
                        else
                        {
                          continue;
                        }
                    }
                }
                else
                {
                    $Form = 1;
                }

 

 

Link to comment
https://forums.phpfreaks.com/topic/129796-_post-help/#findComment-673675
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.