Форма html не ссылается на файл php - PullRequest
0 голосов
/ 26 апреля 2020

Я создал форму html и хочу подключить ее к базе данных на xampp. Я создал базу данных и таблицы, но когда я нажимаю «Отправить», файл php не работает. Я новичок в веб-разработке. Если я просто запускаю http://localhost/connect.php, то это работает, но когда я нажимаю кнопку отправить в форме, он перенаправляет на file:///F:/Xampp/htdocs/connect.php, открывает и показывает ошибку. Это код html для моей формы.

<form method="post" onSubmit="return validateForm();" action="connect.php">

    <input type="text" id="fname" name="fname" class="input-box" maxlength="20" pattern="[A-Z]{1}[a-z]{2,}"placeholder="First Name" required autofocus>
    <input type="text" id="lname" name="lname" class="input-box" maxlength="20" pattern="[A-Z]{1}[a-z]{2,}"  placeholder="Last Name"  required>
    <br>
    <br>
    <input type="email" id="dataemail" name="dataemail" class="input-box" style="width: 48%;" placeholder="Your Email ID"  required>
    <br><br>
    <input type="password" id="datapass" name="datapass" class="input-box" style="width: 48%;" placeholder="Password"  required>
    <br><br>
    <input type="text" id="dob" name="dob" class="input-box" style="width: 48%;" placeholder="Date of Birth" onfocus="(this.type='date')" min="1901-01-01" max="1999-12-31"  required>
    <br>
    <p style="font-size:150%;">

    <input type="radio" id="male" name="gender" value="Male" required>
    <label for="male">Male</label>
    <input type="radio" id="female" name="gender" value="Female">
    <label for="female">Female</label>
    <input type="radio" id="other" name="gender" value="Other">
    <label for="other">Other</label>
    </p>

    <p><span><input type="checkbox" required></span> I agree to these <a href= "##">terms and conditions </a></p>
    <button type:"button" class="signupbutton">Sign Up</button>

    <hr>
    <p class="or">OR</p></form> 

Это мой php код

<?php
    $dbhost = 'localhost' ;
    $username = 'root' ;
    $password = '' ;
    $db = 'task';

    $fname = filter_input(INPUT_POST,'fname');
    $lname = filter_input(INPUT_POST,'lname');
    $dataemail = filter_input(INPUT_POST,'fdataemail');
    $datapass = filter_input(INPUT_POST,'datapass');
    $dob = filter_input(INPUT_POST,'dob');
    $gender = filter_input(INPUT_POST,'gender');


    $conn =new mysqli("$dbhost", "$username", "$password", "$db" );
    echo "Connected to db";

    if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
    }

    $sql = "INSERT INTO `signup` (`First name`, `Last name`, `Email ID`, `Password`, `Date of Birth`, `Gender`)
    VALUES ('$fname','$lname','$dataemail','$datapass','$dob','$gender')";

    if ($conn->query($sql) === TRUE) {
        echo "New record created successfully";
    } else {
        echo "Error: " . $sql . "<br>" . $conn->error;
    }

$conn->close();
?>

The error

Ответы [ 3 ]

0 голосов
/ 26 апреля 2020

Я сделал это, и это сработало. Спасибо.

action="http://localhost/connect.php"
0 голосов
/ 26 апреля 2020

Пожалуйста, проверьте версию PHP и, если возможно, обновите вопрос и этой информацией. Если вы работаете с PHP версиями до 5.2.9 и 5.3.0, вы должны использовать следующий код, поскольку $connect_error был взломан до PHP 5.2.9 и 5.3.0

if (mysqli_connect_error()) {
    die('Connect Error (' . mysqli_connect_errno() . ') '
            . mysqli_connect_error());
}

вместо

if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

См. Официальную страницу конструкции mysqli

0 голосов
/ 26 апреля 2020

Нет ошибки в соединении между <html> и <php>. <php>, похоже, неправильно подключен к базе данных.

<button type:"button" class="signupbutton">Sign Up</button>: нет "=" после "type".

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...