좋아, 그래서 내가 동일한 필드를 입력 한 증가 할 수있는 사용 가능한 열을 만들려고 노력하고 있지만 작동하지 않는 것 및 나이 동안 노력하고있어. 나는 코드가 혼란 스럽다는 것을 알고 있지만 누군가 도와 줄 수 있습니까?캔트 업데이트 행 mysql 데이터베이스
$make = strtolower($_POST['make']);
$fuel = $_POST['fuel'];
$transmission = $_POST['transmission'];
$size = $_POST['size'];
$doors = $_POST['doors'];
/*$date = time();*/
date_default_timezone_set('Europe/London');
$date = date('y-m-d');
$connect = mysql_connect ("localhost", "root", "**********");
mysql_select_db ("car");
$query = "SELECT * FROM type WHERE make = '$make'";
$result = mysql_query($query);
$row = mysql_num_rows($result);
$amount = $row+1;
$id = $make."[".$amount."]";
if (isset($_POST['submit'])){
if ($make&&$fuel&&$transmission&&$size&&$doors)
{
/*if ($fuel!== $fueltype['0','1','2','3'])*/
if ($fuel=='text')
{
$msg = ("Please enter a valid fuel type: Petrol, Diesel, LPG or Electric");
}
else
if ($transmission=='text')
{
$msg = ('Please enter a valid transmission type: Manual, Auto or Semi-auto');
}
else
if(strpos($size,".") == false){
$msg = ('Please enter the valid engine size: 1.0, 1.4, 1.6 etc');
}
else
if(!preg_match("/^[0-9]+$/",$doors)){
$msg = ('Please enter the number of doors. 3, 5 etc');
}
else{
//Creates the id
$query = mysql_query("SELECT * FROM type");
$numrows = mysql_num_rows($query);
if ($numrows!=0){
while ($row = mysql_fetch_assoc($query)){
$dbid = $row["id"];
$dbmake = $row["make"];
$dbfuel = $row["fuel"];
$dbtransmission = $row["transmission"];
$dbsize = $row["size"];
$dbdoors = $row["doors"];
}
if ($make==$dbmake&&$fuel==$dbfuel&&$transmission==$dbtransmission&&$size==$dbsize&&$doors==$dbdoors){
print_r($dbid);
print_r($dbmake);
print_r($dbfuel);
print_r($dbtransmission);
print_r($dbsize);
print_r($dbdoors);
mysql_query("UPDATE type SET available=available+1 ON DUPLICATE KEY id = id ");
}
else{
//increments the available column '$make'+'[#]'
$query = "SELECT * FROM type WHERE id = '$id'";
$result = mysql_query($query);
$numrows = mysql_num_rows($result);
$inc = $numrows+1;
$available = $inc;
$query = mysql_query ("INSERT INTO type VALUES ('$id', '$make', '$fuel', '$transmission', '$size', '$doors', '$date', '$available')");
$msg = ("Car has been added to database. <a href='database.php'>View database?</a>");
}
}
}
}
를 사용하는 너의 질문을 내려라. 전체 스크립트를 붙여 넣고 "여기, 고쳐주세요"라고 말하는 것은 좋지 않습니다. – dtbarne
** 경고! ** 귀하의 코드는 [SQL 주입 취약점] (http://en.wikipedia.org/wiki/SQL_injection)을 앓고 있습니다. [매개 변수가있는 쿼리] (http://en.wikipedia.org/wiki/Prepared_statement)를 활용할 수 있도록 [PDO] (http://php.net/book.pdo)와 같은 * 비 사용되지 않는 * 데이터베이스 인터페이스를 사용하십시오.). – Charles
SQL 인젝션 취약점이 있습니다. mysql_ * 함수는 더 이상 사용되지 않아야하며 공개 포럼에 데이터베이스 비밀번호를 게시하는 것은 좋지 않을 것입니다. – Cfreak