Я пытаюсь вставить номер телефона в свою базу данных. Я могу подключиться и вставить все другие данные из моей формы (адрес, адрес электронной почты и т.д.) В базу данных отлично, но когда номер телефона вставлен, он игнорирует фактически номер телефона, ТОЛЬКО вводит этот int 2147483647. Независимо от того, какой номер телефона я использую, только эти цифры отображаются в столбце в моей базе данных. Любая помощь будет принята с благодарностью!
Здесь часть php, которая собирает номер телефона из формы на моем веб-сайте
$Phone1 = $_POST['Phone1'];
Здесь html-форма, которая получает номер телефона
<span>
<input id="element_2_1" name="Phone1" class="element text" size="10" maxlength="10" value="" type="text">
<label for="element_2_1">(###) ### - ####</label>
</span>
здесь выражение SQL Insert
$sqlInsert = "INSERT INTO 'phpmy1_belairfinishing_com'.'Contact'('ID', 'FName', 'LName', 'Phone', 'Street', 'City', 'State', 'Country', 'Zipcode', 'Email', 'Message') VALUES (NULL, '".$FName."', '".$LName."', '".$Phone1."', '".$Street."', '".$City."', '".$State."', '".$Country."', '".$Zipcode."', '".$Email."', '".$Message."')";
Вы храните номер телефона как INT, и телефонные номера НЕ Интс. Подписанный 32-битный int имеет максимальное значение 2 147 483 648. В терминах номеров телефонов это будет 214-748-3648. Если вы вставляете номер телефона "больше", чем это, например, 777-777-7777, ну, вы получаете именно то, что хотите - максимально возможное подписанное 32-битное целочисленное представление вашего номера телефона.
Вместо этого используйте поле varchar.
db пытается интерпретировать ваш телефонный номер как int, но значение больше thax max значение столбца int, следовательно max int
Не сохраняйте phonenumber как Int, сохраните его как Varchar
Зачем вам это делать?
Поскольку вам не нужно вычислять с помощью phonenumber и в основном показывать только, что Varchar лучше используется.
Phone
?