1

Before I begin, I realize that I can create the random number function with php but for my own reasons it has to be javascript.

I have a function that generates a random number and it gets saved in the database. In order to do so I have so submit it through a form but when it gets submitted, a different integer is saved in the database.

A random number such as:

6108784240204841

Produces this in my database:

-223602981

HTML

<form action="submit.php" method="post">
        <input type="text" name="number" id="number">
        <button type="submit"></button>
</form>

JS

 $randomNumber = Math.floor(Math.random()*1E16);
 $('#number').val($randomNumber);

PHP

<?php
    if ($_SERVER['REQUEST_METHOD'] === 'POST') {
        if (!empty($_POST['id'])) {
            $inputNumber = filter_var($_POST['number'], FILTER_VALIDATE_INT);
        };
    };

try {
    $db = new PDO('mysql:host=localhost;dbname=myDb;charset=utf8', 'myDb_admin', 'myDb_password');
    $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    $db->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);

    $stmt = $db->prepare('INSERT INTO user (number) VALUES (:number)');
    $stmt->bindParam(':number', $number);

    $number = $inputNumber;

    $stmt->execute();

} catch(PDOException $e) {
    return $e->getMessage();
};

Database Structure

number    
int(100)    
Primary
Mr.Smithyyy
  • 2,157
  • 12
  • 49
  • 95

1 Answers1

2

Your trying to save a number that is too large use BIGINT .

number
BIGINT(20)
Primary

Integer Types

Nix
  • 57,072
  • 29
  • 149
  • 198