jquery와 ajax를 사용하여 데이터베이스에서 레코드 (게임)를 추가 및 삭제하려고합니다. 저는 아직 주니어 소프트웨어 엔지니어이며 웹 개발의 기본 사항을 배우고 있습니다. 그러나이 작업을 수행하고 내가 누락 된 작업이 무엇인지 확실하지 않습니다.새로 고침없이 DB에 새 레코드를 삭제하고 삽입하십시오.
나는 내 데이터베이스에서 5 개의 열을 가지고 있으며 ID는 자동 증가로 숨겨져 있습니다.
내 질문에 내가 추가하거나 게임을 삭제하고 데이터베이스에 반영하게하지 않는 코드가 무엇입니까 ???
이것은 게임을 삭제하고 추가하는 호출이있는 내 주 파일입니다.
<script type = "text/javaScript" src ="http://code.jquery.com/jquery- latest.js""></script>
<script type = "text/javascript">
$(document).ready(function(){
$("add games").Submit(function()
$("#add").load("add.php"); {
var id = $("#ID").val();
var name = $("#name").val();
var type = $("#type").val();
var rating = $("#score").val();
var release = $("Yreleased").val();
var dataString = 'ID=' + id 'name='+ name + '&username=' + type + '&password=' + rating + '&gender=' + release;
if (id =='' || name == '' || type == '' || rating == '' || release == '')
{
alert("please enter some valid data for your game entry");
}
else
$.ajax({
type: "POST",
url: "add.php",
data: dataString,
success: function(){
$('.success').fadeIn(200).show();
$('.error').fadeOut(200).hide();
}
});
}
return false;
});
});
</script>
<body>
<?php
include("dbconfig.php");
$sql = "SELECT * FROM games";
$result = mysql_query($sql);
while ($record = mysql_fetch_array($result)){
echo "</br> Game ID: " .$record['ID']. "</br> Game Name: " .$record['Name'].
"<br /> Game Type: ".$record['Type']. "<br /> Rating: ".$record['Rating']."<br /> Year Released: ".$record['Release Year']."<br /> <br />" ?>
<a href="#" id="<?php echo $record["ID"]; ?>" class="deletebutton"><img src="trash.png" alt="delete"/></a>
<?php
}
?>
<form name="add" id ="add" action="add.php" method="post">
<input class ="gameID" type="hidden" id="ID" value = " ' .$record['ID'] . ' " />
<b>Game Name: </b> <input type="text" id="name" size=70>
<b>Game Type:</b> <input type="text" id="type" size=40>
<b>Rating: </b> <input type="number" id="score" min="1.0" max="10.0" step ="0.1"/>
<b>Year Released: </b> <input type="number" min="1900" max="2011" id="Yreleased" value="1985" size=4>
<p><input type="submit" name="Submit" id = "Submit" value="Add Game" class = "add games"></p>
</form>
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"></script>
<script type="text/javascript"
$(document).ready(function() {
$("a.deletebutton").click(function(){
var del_id = element.attr("id");
var info = 'id=' + del_id;
var parent = $(this).parent();
if(confirm("Sure you want to delete this game? !"))
{
$.ajax({
type: "get",
url: "delete.php",
data: parent.attr('id').replace('record-',"),
success: function(){
}
});
$(this).parents(".record").animate({ backgroundColor: "#fbc7c7" }, "fast")
.animate({ opacity: "hide" }, "slow");
}
return false;
});
});
</script>
</body>
와 나는 추가에 대한 매우 간단한 PHP 파일을 가지고, 대한 삭제하고 dbconfig
delete.php<?php
// This is a sample code in case you wish to check the username from a mysql db table
include("dbconfig.php");
if(($_GET['id'])
{
$id=$_GET['id'];
$sql = "DELETE from games where ID='.(int)$_GET['id'];
$result= mysql_query($sql);
}
?>
에 대한
이 나의은 add.php 내 dbconfig.php입니다에 대한 마지막
<?php
include("dbconfig.php");
if(isset($_POST['Submit'])
$name=$_POST['name'];
$type=$_POST['type'];
$rating=$_POST['score'];
$release=$_POST['Yreleased'];
$sql = ("INSERT INTO games VALUES ($name, $type, $rating, $release)");
echo " your game has been added to the list of games. ";
?>
및 내 dbconfig 마지막
<?php
$user_name = "root";
$password = "";
$database = "gamebook";
$server = "localhost";
$bd = mysql_connect($server, $user_name, $password) or die ('I cannot connect to the database because:' . mysql_error());
mysql_select_db($database);
?>
내가 처음으로 질문을 올리고 물을 때마다, 내가 용납 할 수없는 일을했거나 달리 수행해야만한다면 팁, 도움, 링크 또는 누군가가 나를 도울 수 있다면 감사 할 것입니다. 내 문제를 해결할 수 있습니다. 데이터베이스에서 읽을 수는 있지만 동적으로 추가하거나 삭제할 수는 없습니다.
질문 무엇입니까? –
게임을 추가하는 것과 동일한 DB를 새로 고치거나 제거하지 않고 레코드를 동적으로 삭제할 수 없습니다. 게임을 추가 할 수 없어서 데이터베이스에 반영된 것을 확인하십시오. 모든 코드가 올바르게 수행하는 것은 데이터베이스에서 읽기 및 레코드를 표시하는 것입니다. 각 레코드 아래의 삭제 버튼이 보이지만 작동하지 않습니다. – deli10
문제를 특정 구성 요소로 좁히고 올바르게 포맷하십시오. –