0

I'm sure I'm just doing something stupid but I think I'm close. What I'm trying to do as add validation to my submission. With my current code regardless of what data I enter into the serial field it always comes up with Invalid Serial. Any suggestions?

<?php

$serial=$_POST['serial'];
$model=$_POST['model'];
$deviceCondition=$_POST['deviceCondition'];
$sealCondition=$_POST['sealCondition'];
$location=$_POST['location'];
$deployDate=$_POST['deployDate'];
$weight=$_POST['weight'];
$connectedTerminal=$_POST['connectedTerminal'];
$notes=$_POST['notes'];

//NEW PDO connection

$serialVal = "[a-zA-Z0-9-]+"; 
if ( preg_match( $serialVal, $serial ) ) {

try{   


$conn = new PDO("mysql:host=$sql_server;dbname=$sql_db", $sql_user, $sql_pass);

$sql = "INSERT INTO web01dev4s2.ingenicoInfo (serial, model, deviceCondition, sealCondition, location, deployDate, weight, connectedTerminal, notes) VALUES ('".$serial."', '".$model."', '".$deviceCondition."', '".$sealCondition."', '".$location."', '".$deployDate."', '".$weight."', '".$connectedTerminal."', '".$notes."')";


$q = $conn->prepare($sql);
$result_1=($sql); 

$q->execute(); 
}
catch (PDOException $pe) {
    die("Could not connect to the database" . $pe->getMessage());
}


$count = $q->rowCount();
print("Saved $count record(s).\n");
header( "refresh:2;url=devicelist.php" );

}

else { 
 echo $serial . "Invalid serial number.";
} 

?>
John Haag
  • 11
  • 3

1 Answers1

0

You forgot the delimiters "/"

if(preg_match("/[a-zA-Z0-9-]+/", $serial))
        echo 'oui';
    else
        echo 'no';
Jayo2k
  • 251
  • 3
  • 14