2016-06-28 10 views
0

ich einige leere Daten immer bin, wenn sie in MySQL-Datenbank mit PHP EinfügenLeere Reihe Prävention in mysql

Mein Problem

  1. Id- 1, name= A, sname= A, standard= A, category= A, address =123A, pincode= 123, email= [email protected], mobile1 =1234567890
  2. Id- 2, name= BLANK, sname= BLANK, standard= BLANK, category= BLANK, address =BLANK, pincode=0, email= BLANK, mobile1 =0
  3. Id- 3, name= B, sname= B, standard= B, category= B, address =123B, pincode=123, email= [email protected], mobile1 =1234567890

Dieser ist PHP Code

<?php 
$Name=$_POST['name']; 
$School=$_POST['school']; 
$Standard=$_POST['standard']; 
$Cate=$_POST['cate']; 
$Address=$_POST['address']; 
$Pincode=$_POST['pincode']; 
$Email=$_POST['email']; 
$Mobile1=$_POST['mobile']; 

    $con=mysqli_connect("localhost","username","password","database"); 
     if (mysqli_connect_errno()) 
     { 
      echo "Failed to connect to MySQL: " . mysqli_connect_error(); 
     } 

     $sql="SELECT * FROM somename"; 
     if ($result=mysqli_query($con,$sql)) 
     { 
     $rowcount=mysqli_num_rows($result) + 15118; 

      $sql1="INSERT INTO somename(Id,name,sname,standard,category,address,pincode,email,mobile1) VALUES('$rowcount','$Name','$School','$Standard','$Cate','$Address','$Pincode','$Email','$Mobile1')"; 
      if(mysqli_query($con,$sql1)) 
      { 

      header("Location:file.php?id=$rowcount"); 
      } 

     else 
     { 
      echo "error msg"; 
     } 
     } 
    mysqli_close($con); 
    ?> 
+0

In der Tabellenstruktur 'not null' einstellen. Vor dem Einfügen in PHP auf leere Werte prüfen – Thamilan

+0

Vorbereitete Anweisungen verwenden. Derzeit ist Ihr Code anfällig für SQL-Injektionen. – hjpotter92

+0

Überprüfen Sie, ob es tatsächlich Werte gibt, die länger als 0 sind und durch $ _POST kommen – Philipp

Antwort

0

Es gibt mehrere Möglichkeiten:

Sie not null von MySQL von phpMyAdmin einstellen.

Sie können auch HTML5 required Attribut von Ihrem Formular verwenden.

Oder Sie können PHP empty() verwenden, um dies aus PHP-Code zu tun.

Und Sie können auch Javascript oder Jquery dafür verwenden.

0

Welches dieser Felder gibt Ihnen einen NULL-Eingang?

als Benutzer dev-Odedra bereits gesagt, Sie not null auf den spezifischen Spalten festlegen sollen (diese Spalten, um sicherzustellen, nicht akzeptieren NULL Einträge), und zur gleichen Zeit verwenden, um das required Attribut in Form (um sicherzustellen, ist es unmöglich, um einen leeren Wert im POST zu übergeben), aber zusätzlich sollten Sie Ihre Werte überprüfen und prüfen, ob sie Ihren vordefinierten Spaltentypen in der Datenbanktabelle entsprechen.