-3

i am not able to find the null error but the code is right like every field in html form has its own name which is written correct on php side of code

This is my form code:

<html>
<body>
<center>
<form class="form-horizontal" method="POST" action="register.php">
            <h2><strong>Entry Form</strong></h2>
            <table>
                <tr>
                    <td>&nbsp</td>
                </tr>
                <tr>
                    <td>Directory</td>
                    <td><input type='text' class="form-control" id='username' name='directoryname'></td>
                    <td><input type='button' style="margin-left:10px;" class="btn btn-default" id='check_username_availability' value='Check Directory'></td>
                    <td>&nbsp</td>
                    <td><div id='username_availability_result'></div></td>
                </tr>
                <tr>
                    <td>&nbsp</td>
                </tr>
                <tr>
                    <td>Machine IP</td>
                    <td><input type='text' class="form-control" id='machinename' name='machineip' ></td>
                    <td><input type='button' style="margin-left:10px;" class="btn btn-default" id='check_machine_ip' value='Check IP Address' ></td>
                    <td>&nbsp</td>
                    <td><div id="machine_ip_result"></div></td>
                </tr>
                <tr>
                    <td>&nbsp</td>
                </tr>
                <tr>
                    <td>Description</td>
                    <td><input type='text' class="form-control"  onkeyup="checkdescriptionwords(this)" name="description" id='description'></td>
                    <td><div id="description_result"></div></td>
                </tr>
                <tr>
                    <td>&nbsp</td>
                </tr>
                <tr>
                    <td>State</td>
                    <td>
                        <select id="state" name="state"  class="form-control">
                            <option value="">Select State</option>
                            <option value="andaman-nicobar-map">Andaman-Nicobar</option>
                            <option value="andhra-pradesh-map">Andhra-Pradesh</option>
                            <option value="arunachal-map">Arunachal</option>
                            <option value="assam-map">Assam</option>
                            <option value="bihar-map">Bihar</option>
                            <option value="chandigarh-map">Chandigarh</option>
                            <option value="chattisgarh-map">Chattisgarh</option>
                            <option value="daman-map">Daman</option>
                            <option value="delhi-map">Delhi</option>
                            <option value="goa-map">Goa</option>
                            <option value="gujarat-map">Gujarat</option>
                            <option value="haryana-map">Haryana</option>
                            <option value="himachal-pradesh-map">Himachal-Pradesh</option>
                            <option value="jammu-kashmir-map">Jammu-Kashmir</option>
                            <option value="jharkhand-map">Jharkhand</option>
                            <option value="karnataka-map">Karnataka</option>
                            <option value="kerala-map">Kerala</option>
                            <option value="lakshadweep-map">Lakshadweep</option>
                            <option value="madhya-pradesh-map">Madhya-Pradesh</option>
                            <option value="maharashtra-map">Maharashtra</option>
                            <option value="manipur-map">Manipur</option>
                            <option value="meghalaya-map">Meghalaya</option>
                            <option value="mizoram-map">Mizoram</option>
                            <option value="nagaland-map">Nagaland</option>
                            <option value="orissa-map">Orissa</option>
                            <option value="pondichery-map">Pondichery</option>
                            <option value="punjab-map">Punjab</option>
                            <option value="rajasthan-map">Rajasthan</option>
                            <option value="sikkim-map">Sikkim</option>
                            <option value="tamilnadu-map">Tamilnadu</option>
                            <option value="telangana-map">Telangana</option>
                            <option value="tripura-map">Tripura</option>
                            <option value="uttarnchal-map">Uttarnchal</option>
                            <option value="uttar-pradesh-map">Uttar-Pradesh</option>
                            <option value="west-bengal-map">West Bengal</option>
                        </select>
                    </td>
                </tr>
                <tr>
                    <td>&nbsp</td>
                </tr>
                <tr>
                    <td>Link Status</td>
                    <td>
                        <select id="linkstatus"  name="status" class="form-control">
                            <option value="">Select Link Status</option>
                            <option value="y">Yes</option>
                            <option value="n">No</option>
                        </select>
                    </td>
                </tr>
                <tr><td>&nbsp</td></tr>
                <tr>
                    <td>Institute ID</td>
                    <td><input type="text"  class="form-control" name="institueid" id="institueid"  maxlength="4" onkeypress="return isNumber(event)"/></td>
                    <td><div id="institute_id_result"></div></td>
                </tr>
                <tr><td>&nbsp</td></tr>
                <tr>
                    <td>Category</td>
                    <td>
                        <select class="form-control" id="category"  name="category">
                            <option selected="">Select Category</option>
                            <option value="cate-1g">1g</option>
                            <option value="cate-army">army</option>
                            <option value="cate-artd">artd</option>
                            <option value="cate-ayush">ayush</option>
                            <option value="cate-bhawan">bhawan</option>
                            <option value="cate-budget">budget</option>
                            <option value="cate-cdac">cdac</option>
                            <option value="cate-cdot">cdot</option>
                            <option value="cate-central">central</option>
                            <option value="cate-cooperative">cooperative</option>
                            <option value="cate-core">core</option>
                            <option value="cate-csir">csir</option>
                            <option value="cate-dae">dae</option>
                            <option value="cate-dbt">dbt</option>
                            <option value="cate-deemed-uni">deemed-uni</option>
                            <option value="cate-dir">dir</option>
                            <option value="cate-dir-list">dir-list</option>
                            <option value="cate-drdo">drdo</option>
                            <option value="cate-dst">dst</option>
                            <option value="cate-engineering">engineering</option>
                            <option value="cate-ernet">ernet</option>
                            <option value="cate-exbackup.html">exbackup.html</option>
                            <option value="cate-ex.html">ex.html</option>
                            <option value="cate-icar">icar</option>
                            <option value="cate-icfre">icfre</option>
                            <option value="cate-icmr">icmr</option>
                            <option value="cate-iiit">iiit</option>
                            <option value="cate-iim">iim</option>
                            <option value="cate-iiser">iiser</option>
                            <option value="cate-iit">iit</option>
                            <option value="cate-isi">isi</option>
                            <option value="cate-isro">isro</option>
                            <option value="cate-library">library</option>
                            <option value="cate-management">management</option>
                            <option value="cate-mass">mass</option>
                            <option value="cate-media">media</option>
                            <option value="cate-medical">medical</option>
                            <option value="cate-moes">moes</option>
                            <option value="cate-mop">mop</option>
                            <option value="cate-nadt">nadt</option>
                            <option value="cate-navy">navy</option>
                            <option value="cate-ncert">ncert</option>
                            <option value="cate-ncte">ncte</option>
                            <option value="cate-nid">nid</option>
                            <option value="cate-nielit">nielit</option>
                            <option value="cate-nift">nift</option>
                            <option value="cate-niper">niper</option>
                            <option value="cate-nit">nit</option>
                            <option value="cate-npti">npti</option>
                            <option value="cate-ntro">ntro</option>
                            <option value="cate-others">others</option>
                            <option value="cate-police">police</option>
                            <option value="cate-pragati">pragati</option>
                            <option value="cate-puni">puni</option>
                            <option value="cate-rbi">rbi</option>
                            <option value="cate-rese">rese</option>
                            <option value="cate-sau">sau</option>
                            <option value="cate-sdc">sdc</option>
                            <option value="cate-stqc">stqc</option>
                            <option value="cate-suni">suni</option>
                            <option value="cate-swan">swan</option>
                            <option value="cate-ugc">ugc</option>
                            <option value="cate-wifi">wifi</option>
                            <option value="cate-wifideity">wifideity</option>
                            <option value="cate-wifiindirab">wifiindirab</option>
                            <option value="cate-wifimofnb">wifimofnb</option>
                            <option value="cate-wifinirman">wifinirman</option>
                            <option value="cate-wifiparlspek">wifiparlspek</option>
                            <option value="cate-wifipresidenth">wifipresidenth</option>
                            <option value="cate-wifirajivgb">wifirajivgb</option>
                            <option value="cate-wifishastri">wifishastri</option>
                            <option value="cate-wifishram">wifishram</option>
                            <option value="cate-wifitech">wifitech</option>
                            <option value="cate-wifitransport">wifitransport</option>
                            <option value="cate-wifiudyog">wifiudyog</option>
                            <option value="cate-wifivigyan">wifivigyan</option>
                            <option value="cate-wifiyojana">wifiyojana</option>
                        </select>
                    </td>
                </tr>
                <tr><td>&nbsp</td></tr>
                <tr>
                    <td>Service Provider</td>
                    <td>
                        <select class="form-control" id="provider"  name="provider">
                                <option selected="">Select Provider</option>
                                <option value="MTNL">MTNL</option>
                                <option value="NKN">NKN</option>
                                <option value="BSNL">BSNL</option>
                                <option value="PGCIL">PGCIL</option>
                                <option value="RAILTEL">RAILTEL</option>
                                <option value="INTERNAL">INTERNAL</option>

                        </select>
                    </td>
                </tr>
                <tr><td>&nbsp</td></tr>
                <tr>
                    <td>Project</td>
                    <td>
                        <select class="form-control" id="project"  name="project">
                             <option selected="">Select Project</option>
                                <option value="NKN">NKN</option>
                                <option value="NMEICT">NMEICT</option>
                                <option value="Z1G">DIST-NKN</option>
                                <option value="Z1GNIC">DIST-NIC</option>
                                <option value="CORE">CORE</option>
                                <option value="FW">FIREWALL</option>
                                <option value="BHAWAN">BHAWAN</option>
                                <option value="WIFI">WIFI</option>
                                <option value="PRAGATI">PRAGATI</option>
                        </select>
                    </td>
                </tr>
                <tr><td>&nbsp</td></tr>
            </table>
            <button type="button" class="btn btn-warning"  id="validate">Validate</button>
            <button type="submit" class="btn btn-success"  id="register">Register</button>
            <button type="button" class="btn btn-default">Home</button>
        </form>
        </center>  
    </body>
</html>

This is my php code : php code is not getting any value from the form data or textboxes

<?php
    $directoryName=$_POST['directoryname'];
    $ipaddress=$_POST['ipaddress'];
    $description=$_POST['description'];
    $state=$_POST['state'];
    $status=$_POST['status'];
    $instituteid=$_POST['institueid'];
    $provider=$_POST['provider'];
    $category=$_POST['category'];
    $project=$_POST['project'];
    $resulting=0;
    $query="INSERT INTO data (`directory`,`machineip`,`description`,`state`,`status`,`instituteid`,`provider`,`category`,`project`) VALUES ('$directoryName','$ipaddress','$description','$state','$status','$instituteid','$provider','$category','$project')";
    if(@mysql_connect('localhost','root','')){
        if(@mysql_select_db('username')){
            if(strlen($instituteid) == 1){
                $instituteid="000".$instituteid;
            }
            if(strlen($instituteid) == 2){
                $instituteid="00".$instituteid;
            }
            if(strlen($instituteid) == 3){
                $instituteid="0".$instituteid;
            }
            if(strlen($instituteid) == 4){
                $instituteid=$instituteid;
            }

            $query="INSERT INTO data (`directory`,`machineip`,`description`,`state`,`status`,`instituteid`,`provider`,`category`,`project`) VALUES ('$directoryName','$ipaddress','$description','$state','$status','$instituteid','$provider','$category','$project')";
            if($result=@mysql_query($query)){
                $newfile=fopen('datasave.txt','a');
                $data=$directoryName.":".$ipaddress.":".$description.":".$state.":".$status.":".$instituteid.":".$category.":".$project."\r\n";
                fwrite($newfile,$data);
                fclose($newfile);
                $resulting=1;
                /*echo '<body><div class="container"><div class="container-fluid"><center><div class="alert alert-success" style="margin-top:45px;">Data Saved <strong>Successfully</strong></div></center></div></div></body>';>
                header( "refresh:3; url=index.php" );*/
            }
        }
    }
    if($resulting == 1){
        echo 1;
    }else{
        echo 0;
    }
?>
  • 2
    Please stop using `@` to ignore errors, solve the errors instead of ignoring them. – Epodax Aug 26 '16 at 11:56
  • Stop using the **deprecated and as of PHP7 removed** `mysql_*` functions. Migrate to PDO and start using Prepared Statements. – Charlotte Dunois Aug 26 '16 at 12:01
  • [Little Bobby](http://bobby-tables.com/) says ***[your script is at risk for SQL Injection Attacks.](http://stackoverflow.com/questions/60174/how-can-i-prevent-sql-injection-in-php)***. Even [escaping the string](http://stackoverflow.com/questions/5741187/sql-injection-that-gets-around-mysql-real-escape-string) is not safe! – Jay Blanchard Aug 26 '16 at 12:14
  • ***Please [stop using `mysql_*` functions](http://stackoverflow.com/questions/12859942/why-shouldnt-i-use-mysql-functions-in-php).*** [These extensions](http://php.net/manual/en/migration70.removed-exts-sapis.php) have been removed in PHP 7. Learn about [prepared](http://en.wikipedia.org/wiki/Prepared_statement) statements for [PDO](http://php.net/manual/en/pdo.prepared-statements.php) and [MySQLi](http://php.net/manual/en/mysqli.quickstart.prepared-statements.php) and consider using PDO, [it's really pretty easy](http://jayblanchard.net/demystifying_php_pdo.html). – Jay Blanchard Aug 26 '16 at 12:14

1 Answers1

0

$_POST['state'] is empty because the value of your state dropdown is not being submitted (or no option was selected in the form)

Do var_dump($_POST) to see and test the inputs that your script receives

BeetleJuice
  • 39,516
  • 19
  • 105
  • 165