php - Why is my data not being submitted into my database? -


i need connect html form sql database , i'm starting out simple form can understand how works. can't figure out doing wrong. have form created, php script, , database created. whenever submit form takes me blank page , nothing has been added database. i've written error messages if connections fail i'm not seeing either. i'm not advanced in programming can please me?

index1.html

<html> <body> <form action="info.php" method="post">  <p>username:<input type="text" name="username" /></p> <p>email:<input type="text" name="email" /></p>    <input type="submit" value="submit"/>   </form>   </body> </html> 

info.php

 <?php  define('db_name' , 'users' ); define('db_user' , 'root'); define('db_password' , ''); define('db_host' , 'localhost');  $link = mysql_connect(db_host, db_user, db_password); //connection host if (!$link) {     die('could not connect: ' . mysql_error()); } //error if not connected host  $db_selected = mysql_select_db(db_name, $link); //select database  if(!$db_selected){     die('can\'t use ' . db_name . ':' . mysql_error()); }  echo 'connected successfully';  $value = $_post['username']; $value2 = $_post['email'];  $sql = "insert guests (username, email) values ('$value', '$value2')";  if(!mysql_query($sql)){ die('error: ' . mysql_error()); } //error check see if connected tables  mysql_close(); //close connection ?> 

as stated in comments; mysql_ code checks out, chances need use either mysqli_ or pdo, since mysql_ functions may not available use.

if following mysqli_ rewrite not work you, problem goes deeper , out of scope of question.

using error reporting will/should confirm that. consult "footnotes" on how use in php file(s).

<?php  define('db_name' , 'users' ); define('db_user' , 'root'); define('db_password' , ''); define('db_host' , 'localhost');  $link = mysqli_connect(db_host, db_user, db_password, db_name); //connection host if (!$link) {     die('could not connect: ' . mysqli_error($link)); }   echo 'connected successfully';  $value = mysqli_real_escape_string($link,$_post['username']); $value2 = mysqli_real_escape_string($link,$_post['email']);  $sql = "insert guests (username, email) values ('$value', '$value2')";  if(!mysqli_query($link, $sql)){ die('error: ' . mysqli_error($link)); } //error check see if connected tables  else{ echo "data entered"; }  mysqli_close($link); //close connection ?> 

references:


footnotes:

add error reporting top of file(s) find errors.

<?php  error_reporting(e_all); ini_set('display_errors', 1);  // rest of code 

sidenote: error reporting should done in staging, , never production.

  • make sure server running , configured php/mysql/apache.

  • make sure columns indeed varchar , long enough accommodate data.