Ashish Bharwal Ashish Bharwal - 2 years ago 195
PHP Question

exception 'PDOException' with message 'SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '2147483647' for key 'contact_no'

I am facing a problem whenever i tried to fill my form and field Contact no & Phone no it automatically generate its own static no. every time and as i had given "UNIQUE" to my key 'Contact_no' it generates error this


"exception 'PDOException' with message 'SQLSTATE[23000]: Integrity
constraint violation: 1062 Duplicate entry '2147483647' for key
'contact_no'' in C:\wamp\www\ipsem6\connectivity.php:34 Stack trace:

0 C:\wamp\www\ipsem6\connectivity.php(34): PDO->exec('INSERT INTO `a8...') #1 {main}"




Below is my code of my register.php page

<html>
<head>

<title>Register</title>
<style>

.content:before {
content: "";
position: fixed;
left:34px;
right:0;
top:90px;
bottom:20px;
z-index: -1;

display: block;
background-image: url('assets/img/cd.JPG');
width: 1281px;
height: 8000px;


-webkit-filter: blur(5px);
-moz-filter: blur(5px);
-o-filter: blur(5px);
-ms-filter: blur(5px);
filter: blur(5px);
}

.content {
overflow: auto;
position: static;

left: 0;
right: 0;
z-index: 0;
margin-left: 0;
margin-right: 0;
}

</style>
<link rel="STYLESHEET" type="text/css" href="style/fg_membersite.css" />
<script type='text/javascript' src='scripts/gen_validatorv31.js'></script>
<link rel="STYLESHEET" type="text/css" href="style/pwdwidget.css" />
<script src="scripts/pwdwidget.js" type="text/javascript"></script>
<link rel="stylesheet" href="style/style1.css" type="text/css" />
</head>
<body class="body" >
<div class="content">
<header class="mainheader" >

<div class="canmenu">

<div class="left mtop10"><a href="http://www.chitkara.edu.in/" title="" rel="home">
<img src="assets/img/chitkara_logo.png" /></a>
</div>
<div id="cssmenu">
<nav><ul>
<li><a href="index.html"><span><b>Home</b></span></a></li>

<li><a href="#"><span><b>About Us</b></span></a></li>

<li><a href="login.html"><span><b>Login</b></span></a></li>

<li class="active"><a href="register.php"><span><b>Register</b> </span></a></li>

<li class="last"><a href=""><span><b>Contact us</b></span></a></li>
</ul></nav>
</div>

<!--<div class="can-menu">
</div>-->
</div>
</div>
<!-- Form Code Start -->

<center><div id='fg_membersite' >
<form id='register' method='post' action="connectivity.php" accept-charset='UTF-8' >

<br>
<br>


<fieldset >

<legend><h1><font size="40" color="BLACK"><b><center><img src="assets/img/canfinal1.jpg" height="100px" width="150px"/><font color="WHITE">Register</font></b></font></h1></legend>

<input type='hidden' name='submitted' id='submitted' value='1'/>

<div class='short_explanation'><font size="2" color="RED"><b>* required fields</b></font></div>
<input type='text' class='spmhidip' />

<div><span class='error'> </span></div>
<div class='container'>
<label for='name' ><font color="WHITE">Your Full Name<font color="RED"><b>*</b></font> :</label><br/>
<input type='text' name='name' id='name' maxlength="50" /><br/>
<span id='register_name_errorloc' class='error'></span>
</div>
<div class='container'>
<label for='email' ><font color="WHITE">Email Address<font color="RED"><b>*</b></font> :</label><br/>
<input type='text' name='email' id='email' maxlength="50" /><br/>
<span id='register_email_errorloc' class='error'></span>
</div>
<div class='container'>
<label for='username' ><font color="WHITE">UserName/University Id<font color="RED"><b>*</b></font> :</label><br/>
<input type='text' name='username' id='username' maxlength="50" /><br/>
<span id='register_username_errorloc' class='error'></span>
</div>

<div class='container'>
<label for='contacts1' ><font color="WHITE">Contact No.<font color="RED"><b>*</b></font> :</label><br/>
<input type='phone' name='contacts1' id='contacts1' /><br/>

</div>

<div class='container'>
<label for='contact2' ><font color="WHITE">Phone No. :</label><br/>
<input type='tel' name='contact2' id='contact2' /><br/>

</div>


<div class='container' >
<label for='password' ><font color="WHITE">Password<font color="RED"><b>*</b></font> :</label><br/>
<div class='pwdwidgetdiv' id='thepwddiv' ></div>
<noscript>
<input type='password' name='password' id='password' maxlength="50" />
</noscript>
<div id='register_password_errorloc' class='error' style='clear:both'></div>
</div>





<div class='container'>
<label for='date' ><font color="WHITE">Date of Birth<font color="RED"><b>*</b></font> :</label><br/>
<input type='date' name='dats' id='dats' maxlength="50" /><br/>
<span id='register_username_errorloc' class='error'></span>
</div>

<div class='container' >
<label><font color="WHITE">Role<font color="RED"><b>*</b></font> :</label>
<select name='rle' id='rle' maxlength="50" >
<option value="Alumni">Alumni</option>
<option value="Mentor">Mentor</option>
<option value="H.O.D">H.O.D</option>

</select>
<span id='register_username_errorloc' class='error'></span>


</div>

<div id="q1" class="form-group">
<label><font color="WHITE">Gender<font color="RED"><b>*</b></font> :</label>
<select class="form-control" id="s" name="s">
<option value="Male" >Male</option>
<option value="Female">Female</option>
</div>
</select>



<div class='container'>
<input type='submit' name='Submit' value='Submit' color="blue" />
</div>

</fieldset>
</form>
<!-- client-side Form Validations:
Uses the excellent form validation script from JavaScript-coder.com-->

<script type='text/javascript'>
// <![CDATA
var pwdwidget = new PasswordWidget('thepwddiv','password');
pwdwidget.MakePWDWidget();

var frmvalidator = new Validator("register");
frmvalidator.EnableOnPageErrorDisplay();
frmvalidator.EnableMsgsTogether();
frmvalidator.addValidation("name","req","Please provide your name");

frmvalidator.addValidation("email","req","Please provide your email address");



frmvalidator.addValidation("username","req","Please provide your University ID.");

frmvalidator.addValidation("password","req","Please provide a password");

frmvalidator.addValidation("date","req","Please provide your D.O.B");

// ]]>
</script>

<!--
Form Code End
-->

</div>
</body>

</html>


Below is my code of connectivity.php

<?php
// DATABASE CONNECTIVITY & UPLOADING ---->
$connection_error = 'Could Not Connect to server.';
$connection_error2 = 'Could Not Connect to database.';

$host = 'localhost';
$user = 'root';
$password = '';
$database = 'a8172058_portal';
$dsn = "mysql:host=$host;dbname=$database";
try {
$conn = new PDO( $dsn, $user, $password );
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);




$name=$_POST["name"];
$email=$_POST["email"];
$username=$_POST['username'];
$pass=$_POST['password'];
$contactno=$_POST['contacts1'];
$cont2=$_POST['contact2'];
$dob=$_POST['dats'];
$role=$_POST['rle'];
$gender=$_POST['s'];




$sql= "INSERT INTO `a8172058_portal`.`users` (email,univ_id,password,full_name,role,gender,contact_no1,contact_no2,dob)
VALUES ('$email','$username','$pass','$name','$role','$gender','$contactno','$cont2','$dob');";

$conn->exec($sql);
print "<meta http-equiv=\"refresh\" content=\"0;URL=form1.html\">";
}
catch(PDOException $e)
{
print ($e);
//print "<meta http-equiv=\"refresh\" content=\"0;URL=error.html\">";
}

$conn = null;




?>


Please Help me solving this Problem . My DM is
enter image description here

No matter what value i give it always give that static value marked in image below.
enter image description here

Answer Source

The number 2147483647 is the biggest ten-digit positive integer that can be stored in a 4 byte integer field.

You should use a larger field type like BIGINT although for this particular case I recommend VARCHAR. It's a phone number not an actual integer you need to do math with.

P.S: You should really use pepared statements to protect your application from threats like SQL Injection. And you should always hash the password before inserting it in the database.

Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download