插入数据库我的sql php(Inserting into database my sql php)
我试图在提交时将用户输入插入数据库。 我需要使用POSTBACK方法,但我遇到了问题。 当打开文本框下的注册页面时,它会说通知:未定义的变量:第147行的第一个名称:\ twa \ twa291 \ assignment1 \ rego.php
注意:未定义的变量:第147行的I:\ twa \ twa291 \ assignment1 \ rego.php中的中间名
注意:未定义的变量:第147行的I:\ twa \ twa291 \ assignment1 \ rego.php中的姓氏
注意:未定义的变量:第147行的I:\ twa \ twa291 \ assignment1 \ rego.php中的用户
ETC等等......
它是否必须等待用户输入? 为什么会这样? 这是我的代码:
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <link rel="stylesheet" type="text/css" href="stylesheet.css" /> <title>Registration</title> <script> function validateForm() { var x=document.forms["rego"]["gname"].value; if (x==null || x=="") { alert("Given name must be filled out"); return false; } var x=document.forms["rego"]["mname"].value; if (x==null || x=="") { alert("Middle name must be filled out"); return false; } var x=document.forms["rego"]["surname"].value; if (x==null || x=="") { alert("Surname must be filled out"); return false; } var x=document.forms["rego"]["username"].value; if (x==null || x=="") { alert("Username must be filled out"); return false; } var x=document.forms["rego"]["address"].value; if (x==null || x=="") { alert("Address must be filled out"); return false; } var x=document.forms["rego"]["postcode"].value; if (x==null || x=="") { alert("Postcode must be filled out"); return false; } var x=document.forms["rego"]["state"].value; if (x==null || x=="") { alert("State must be filled out"); return false; } var x=document.forms["rego"]["tel"].value; if (x==null || x=="") { alert("Telephone must be filled out"); return false; } var x=document.forms["rego"]["password"].value; if (x==null || x=="") { alert("Password must be filled out"); return false; } var x=document.forms["rego"]["passconfirm"].value; if (x==null || x=="") { alert("Confirmation of password must be filled out"); return false; } } </script> </head> <body> <div id="container"> <div id="header"> <h1>Registration</h1></div> <div id="menu"> <a href="home.php"><h2>Homepage</h2></a><br /> <a href="rego.php"><h2>Registration</h2></a><br /> <a href="userlogin.php"><h2>User Login</h2></a><br /> <a href="adminlogin.php"><h2>Administrator Login</h2></a><br /> <a href="tipping.php"><h2>Tipping</h2></a><br /> <a href="termsnconditions.php"><h2>Terms & Conditions</h2></a><br /> </div> <form id="rego" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>" method="post" onSubmit="return validateForm()"> <label>Given Name:</label> <input type="text" name="gname"><br /> <br /> <label>Middle Name: </label><input type="text" name="mname"><br /> <br /> <label>Family Name:</label> <input type="text" name="surname"><br /> <br /> <label>Chosen Username:</label> <input type="text" name="username"><br /> <br /> <label>Address:</label> <input type="text" name="address"><br /> <br /> <label>Postcode: </label><input type="text" name="postcode"><br /> <br /> <label>State:</label> <input type="text" name="state"><br /> <br /> <label>Tel number: </label><input type="text" name="tel"><br /> <br /> <label>Password:</label> <input type="password" name="password"><br /> <br /> <label>Password confirmation:</label> <input type="password" name="passconfirm"><br /> <br />
<input type="submit" value="submit" name="submit"> </div> </form> <?php require_once("conn.php"); if (isset($_REQUEST["submit"])) { if (isset($_POST["submit"])) { $firstname = mysql_real_escape_string($_POST["gname"]); $middlename = mysql_real_escape_string($_POST["mname"]); $lastname = mysql_real_escape_string($_POST["surname"]); $user = mysql_real_escape_string($_POST["username"]); $addy = mysql_real_escape_string($_POST["address"]); $post = mysql_real_escape_string($_POST["postcode"]); $sta = mysql_real_escape_string($_POST["state"]); $telephone = mysql_real_escape_string($_POST["tel"]); $pass = mysql_real_escape_string($_POST["password"]); $systemuser= mysql_real_escape_string($_POST["susername"]); } } $sql = "INSERT INTO users(gname, mname, surname, username, address, postcode, state, tel, password) VALUES('$firstname', '$middlename', '$lastname', '$user', '$addy', '$post', '$sta', '$telephone', '$pass')"; $rs = mysql_query($sql, $conn); if (!$rs) { die('Problem with query' . mysql_error()); } echo "1 record added"; mysql_close($conn); ?> </body> </html>
请注意:我知道正在删除mysql或类似的东西。 但我目前正在大学学习它,别无选择,只能去做。 我在一周内完成了这个主题,所以如果你能跟我一起去,那就太好了。 谢谢!
I am trying to insert user input into a database on submit. I am required to use POSTBACK method but i am having problems. When open the registration page under al the text boxes it is saying Notice: Undefined variable: firstname in I:\twa\twa291\assignment1\rego.php on line 147
Notice: Undefined variable: middlename in I:\twa\twa291\assignment1\rego.php on line 147
Notice: Undefined variable: lastname in I:\twa\twa291\assignment1\rego.php on line 147
Notice: Undefined variable: user in I:\twa\twa291\assignment1\rego.php on line 147
ETC ETC ETC....
Doesnt it have to wait for the user to input? Why is this happening? Here is my code:
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <link rel="stylesheet" type="text/css" href="stylesheet.css" /> <title>Registration</title> <script> function validateForm() { var x=document.forms["rego"]["gname"].value; if (x==null || x=="") { alert("Given name must be filled out"); return false; } var x=document.forms["rego"]["mname"].value; if (x==null || x=="") { alert("Middle name must be filled out"); return false; } var x=document.forms["rego"]["surname"].value; if (x==null || x=="") { alert("Surname must be filled out"); return false; } var x=document.forms["rego"]["username"].value; if (x==null || x=="") { alert("Username must be filled out"); return false; } var x=document.forms["rego"]["address"].value; if (x==null || x=="") { alert("Address must be filled out"); return false; } var x=document.forms["rego"]["postcode"].value; if (x==null || x=="") { alert("Postcode must be filled out"); return false; } var x=document.forms["rego"]["state"].value; if (x==null || x=="") { alert("State must be filled out"); return false; } var x=document.forms["rego"]["tel"].value; if (x==null || x=="") { alert("Telephone must be filled out"); return false; } var x=document.forms["rego"]["password"].value; if (x==null || x=="") { alert("Password must be filled out"); return false; } var x=document.forms["rego"]["passconfirm"].value; if (x==null || x=="") { alert("Confirmation of password must be filled out"); return false; } } </script> </head> <body> <div id="container"> <div id="header"> <h1>Registration</h1></div> <div id="menu"> <a href="home.php"><h2>Homepage</h2></a><br /> <a href="rego.php"><h2>Registration</h2></a><br /> <a href="userlogin.php"><h2>User Login</h2></a><br /> <a href="adminlogin.php"><h2>Administrator Login</h2></a><br /> <a href="tipping.php"><h2>Tipping</h2></a><br /> <a href="termsnconditions.php"><h2>Terms & Conditions</h2></a><br /> </div> <form id="rego" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>" method="post" onSubmit="return validateForm()"> <label>Given Name:</label> <input type="text" name="gname"><br /> <br /> <label>Middle Name: </label><input type="text" name="mname"><br /> <br /> <label>Family Name:</label> <input type="text" name="surname"><br /> <br /> <label>Chosen Username:</label> <input type="text" name="username"><br /> <br /> <label>Address:</label> <input type="text" name="address"><br /> <br /> <label>Postcode: </label><input type="text" name="postcode"><br /> <br /> <label>State:</label> <input type="text" name="state"><br /> <br /> <label>Tel number: </label><input type="text" name="tel"><br /> <br /> <label>Password:</label> <input type="password" name="password"><br /> <br /> <label>Password confirmation:</label> <input type="password" name="passconfirm"><br /> <br />
<input type="submit" value="submit" name="submit"> </div> </form> <?php require_once("conn.php"); if (isset($_REQUEST["submit"])) { if (isset($_POST["submit"])) { $firstname = mysql_real_escape_string($_POST["gname"]); $middlename = mysql_real_escape_string($_POST["mname"]); $lastname = mysql_real_escape_string($_POST["surname"]); $user = mysql_real_escape_string($_POST["username"]); $addy = mysql_real_escape_string($_POST["address"]); $post = mysql_real_escape_string($_POST["postcode"]); $sta = mysql_real_escape_string($_POST["state"]); $telephone = mysql_real_escape_string($_POST["tel"]); $pass = mysql_real_escape_string($_POST["password"]); $systemuser= mysql_real_escape_string($_POST["susername"]); } } $sql = "INSERT INTO users(gname, mname, surname, username, address, postcode, state, tel, password) VALUES('$firstname', '$middlename', '$lastname', '$user', '$addy', '$post', '$sta', '$telephone', '$pass')"; $rs = mysql_query($sql, $conn); if (!$rs) { die('Problem with query' . mysql_error()); } echo "1 record added"; mysql_close($conn); ?> </body> </html>
PLEASE NOTE: i understand that mysql is being removed or something like that. But i am currently studying it in University and have no choice but to do it. I finish the subject in a week so if you could please bear with me itll be great. Thank you!
原文:
最满意答案
数组(和所有其他javascript对象)的引用不是通过它们的值传递的。 因此在第一次调用时,数组被清空,因此下一个调用将接收一个空数组! 因此,在这些函数中,您不应该更改作为参数传递的数组。 试试这个选择:
function reverseArray(theArray){ let tempArray = []; if(theArray){ let n = theArray.length; // use a local variable to tell which item from the array to move while(n){ // while there is still items in theArray to move tempArray.push(theArray[--n]); // decrement n and add its corresponding value to tempArray (here theArray is not altered at all) } } return tempArray; }
Arrays (and all other javascript objects) are passed by their references not by their values. So in the first call the array is emptied so the next call will recieve an empty array! Thus in those function you should not alter the array passed as parametter. Try this alternative:
function reverseArray(theArray){ let tempArray = []; if(theArray){ let n = theArray.length; // use a local variable to tell which item from the array to move while(n){ // while there is still items in theArray to move tempArray.push(theArray[--n]); // decrement n and add its corresponding value to tempArray (here theArray is not altered at all) } } return tempArray; }
相关问答
更多-
如何将非空值移动到Javascript数组的前面(How to move non-empty values to the front of a Javascript array)[2022-03-03]
我会使用自定义排序功能,如下所示: ['', 'foo', '', 'bar', '', 'baz', ''].sort((a, b) => !a ? 1 : !b ? -1 : 0); // returns: ["foo", "bar", "baz", "", "", "", ""] One non-ES6 way to do it is: var arr = ['', 'foo', '', 'bar', '', 'baz', '']; arr = arr.filter(function(val){re ... -
第二个参数是初始值。 [].reduce(function(previousValue, currentValue){ return Number(previousValue) + Number(currentValue); }, 0); 或使用ES6: [].reduce( (previousValue, currentValue) => previousValue + currentValue, 0); The second parameter is for initial value. []. ...
-
这个奇怪的消息意味着您指定的信任库未被发现,或者由于访问权限而无法打开。 另见@ AdamPlumb的答案如下 。 This bizarre message means that the truststore you specified was: empty, not found, or couldn't be opened (due to access permissions for example). See also @AdamPlumb's answer below.
-
是的,这就是它的意思。 empty不是你的日常功能,它是一种不按常规规则播放的语言结构。 因为事实上, $obj->property不存在,所以结果是正确的。 你需要实现__isset()为empty并且isset可以工作。 Yes, that's what it means. empty is not your everyday function, it's a language construct that doesn't play by normal rules. Because in fact, $ ...
-
问题出在Compile macrodef中。 它试图引用名为srcdir的属性,但它使用${}语法写为标准属性引用,而不是使用@{}的属性语法。 所以在第46行尝试改变这一点:如果您只查找嵌套在其中的单个特定项,则不必迭代每个对象。 您可以直接参考该项目。 foreach ($your_array as $object) { if (isset($object->return->importTroubles->troubleMessage)) { echo $object->return->importTroubles->troubleMessage; } } 如果检查是否设置了特定的嵌套对象变量,它将忽略任何空对象。 You don't hav ...尝试这个: var city = "Karnadaka"; var area = ""; var listing_type = "RENT"; var data = {}; if(city != '') data['city'] = city; if(area != '') data['area'] = area; if(listing_type != '') data['listing_type'] = listing_type; $.ajax({ type: ' ...
客户端身份验证Tomcat - trustAnchors参数必须为非空(Client Authentication Tomcat - trustAnchors parameter must be non-empty)[2023-09-10]
好的 - 问题是证书是使用JDK 1.8创建的,并且tomcat是使用JRE 1.7运行的 - 无论出于何种原因这都会导致问题,所以修复是使用JRE 1.8,现在一切正常。 Okay - the problem was the certificate was created using JDK 1.8 and the tomcat was running with JRE 1.7 - for whatever reason this caused an issue, so the fix was to us ...数组(和所有其他javascript对象)的引用不是通过它们的值传递的。 因此在第一次调用时,数组被清空,因此下一个调用将接收一个空数组! 因此,在这些函数中,您不应该更改作为参数传递的数组。 试试这个选择: function reverseArray(theArray){ let tempArray = []; if(theArray){ let n = theArray.length; // use a local variable to tell which ite ...这是一个棘手的问题,因为Javascript对象的属性没有排序 。 换句话说,使用空值返回第一个这样的属性是非常困难的,因为不保证通过对象属性的循环以相同的顺序命中它们 。 作为推论,如果该属性是对象中的第一个这样的值,则不可能返回true ,因此您的问题无法按照说明解决:) 如果您只有一个非空长度的属性,那么您可以做的最好的事情如下: function FirstNonEmptyArray(object) { for (var property in object) { if (o ...相关文章
更多- HTML5 Web SQL Database 数据库
- 《数据库系统基础:高级篇(第5版)》(Fundamentals of Database Systems (5th Edition) )扫描版[PDF]
- PHP简介
- CI完整MVC案例-php项目实战之CodeIgniter
- my php & mysql FAQ
- PHP数据库编程陷阱视频教程
- 《Oracle Database 11g SQL开发指南》(Oracle Database 11g SQL )扫描版[PDF]
- 锋利的SQL
- 转《小布老师 Oracle.Database.11g.SQL 基础入门系列培训》
- PHP基础视频教程
最新问答
更多- 获取MVC 4使用的DisplayMode后缀(Get the DisplayMode Suffix being used by MVC 4)
- 如何通过引用返回对象?(How is returning an object by reference possible?)
- 矩阵如何存储在内存中?(How are matrices stored in memory?)
- 每个请求的Java新会话?(Java New Session For Each Request?)
- css:浮动div中重叠的标题h1(css: overlapping headlines h1 in floated divs)
- 无论图像如何,Caffe预测同一类(Caffe predicts same class regardless of image)
- xcode语法颜色编码解释?(xcode syntax color coding explained?)
- 在Access 2010 Runtime中使用Office 2000校对工具(Use Office 2000 proofing tools in Access 2010 Runtime)
- 从单独的Web主机将图像传输到服务器上(Getting images onto server from separate web host)
- 从旧版本复制文件并保留它们(旧/新版本)(Copy a file from old revision and keep both of them (old / new revision))
- 西安哪有PLC可控制编程的培训
- 在Entity Framework中选择基类(Select base class in Entity Framework)
- 在Android中出现错误“数据集和渲染器应该不为null,并且应该具有相同数量的系列”(Error “Dataset and renderer should be not null and should have the same number of series” in Android)
- 电脑二级VF有什么用
- Datamapper Ruby如何添加Hook方法(Datamapper Ruby How to add Hook Method)
- 金华英语角.
- 手机软件如何制作
- 用于Android webview中图像保存的上下文菜单(Context Menu for Image Saving in an Android webview)
- 注意:未定义的偏移量:PHP(Notice: Undefined offset: PHP)
- 如何读R中的大数据集[复制](How to read large dataset in R [duplicate])
- Unity 5 Heighmap与地形宽度/地形长度的分辨率关系?(Unity 5 Heighmap Resolution relationship to terrain width / terrain length?)
- 如何通知PipedOutputStream线程写入最后一个字节的PipedInputStream线程?(How to notify PipedInputStream thread that PipedOutputStream thread has written last byte?)
- python的访问器方法有哪些
- DeviceNetworkInformation:哪个是哪个?(DeviceNetworkInformation: Which is which?)
- 在Ruby中对组合进行排序(Sorting a combination in Ruby)
- 网站开发的流程?
- 使用Zend Framework 2中的JOIN sql检索数据(Retrieve data using JOIN sql in Zend Framework 2)
- 条带格式类型格式模式编号无法正常工作(Stripes format type format pattern number not working properly)
- 透明度错误IE11(Transparency bug IE11)
- linux的基本操作命令。。。