Speichern Eingabe vom Benutzer in die Datenbank ein

Ich bin ziemlich neu in PHP und ich bin versucht zu retten, Eingaben von einem Benutzer in einer mysql-Datenbank. Ich folgte ein tutorial online, wie es zu tun, aber jedes mal, wenn ich geben Sie die Benutzer-info, die Webseite sagt mir, dass es fehlgeschlagen ist. Das einzige, was ich denken kann, ist der host-name(ich kopierte und klebte es von phpadmin).Bitte lassen Sie mich wissen, wenn es etwas falsch.

contact.html

<section id="mid_section">
                <div id="boxes">
                    <h1>
                        Leave your information here for a quick reponse:
                    </h1>
                    <br/>
                    <form id="myform" action="userinfo.php" method="post">
                        Name:<input type="text" value="name">
                        Email:<input type="email" value="email">
                        Phone:<input type= "tel" value="phone(opt)">
                        <button id="sub">Submit</button>
                    </form>

db.php

<?php
    $conn = mysql_connect('custsql.eigbox.net','username','password');
    $db= mysql_select_db('visitors');
?>

userinfo.php

<?php
    include_once('db.php');

    $name =$_POST['name'];
    $email =$_POST['email'];
    $phone =$_POST['phone'];

    if(mysql_query("INSERT INTO users (name,email,phone) VALUES ('$name','$email','$phone')"))
    echo"successfully inserted";
    else
    echo "failed";
?>

myscript.js

$("#sub").click(function(){

    $.post($("#myform").attr("action"), $("#myform:input").serializeArray(), function(info){$("#result").html(info);});
    });

$("#myform").submit(function(){
    return false;
    });
  • Dein code ist unglaublich leicht zu hacken. Erfahren Sie, wie zu bereinigen, Variablen und stoppen mit mysql_* wie es ist veraltet. Verwenden mysqli_* oder PDO. Gibt es eine bestimmte Fehlermeldung kann man Staat? Wir können nicht magisch Fehler zu finden, es sei denn, es ist doch offensichtlich.
  • Haben Sie eine eigene mysql-Datenbank?
  • ja ich habe eine eigene sql-Datenbank @bfavaretto
  • kannst du bitte spezifischer werden? Ich bin neu in PHP
  • Wie Sie wissen, funktioniert es nicht? Ist die Seite weiß? Sagt er syntax Fehler in Zeile 3? Tut, ist geben Sie einen mysql-Fehler??? Jedes kleine detail hilft
  • Also, wenn du die db auf dem lokalen Rechner "localhost" als hot-Namen und den Benutzernamen und das Kennwort ein, das Sie definiert, wenn Sie installiert den mysql-server.
  • Ich sah ein paar Personen mit mysqli_* warum ist das besser?.Auch die Fehlermeldung, die kommt ist "gescheitert", die unter userinfo.php
  • die Datenbank ist online
  • Okay, aber wenn das php ist, läuft auf dem gleichen Rechner wie die db, localhost sollte auch funktionieren.
  • ok ich werde es ändern auf "localhost" und Sie wissen lassen,
  • Um Ihre Frage zu beantworten, um RUJordan: VALUES ('$name','$email','$phone') ist eine Sicherheitslücke, und der mysqli-und pdo bietet einen sichereren Optionen. Siehe bobby-tables.com
  • Ich habe es auf localhost,aber trotzdem warf mich der"echo "failed";" Nachricht von userinfo.php
  • Entfernen Sie Ihre if-Anweisung, und versuchen Sie, diese: mysql_query("INSERT INTO users (name,email,phone) VALUES ('$name','$email','$phone')") OR die(mysql_error()). Wenn die Abfrage fehlschlägt, sollte es Euch genau sagen was das problem ist.

InformationsquelleAutor jorgeAChacon | 2013-08-30
Schreibe einen Kommentar