PDA

View Full Version : سوال: مشکل در اسکریپت JS



پیام حیاتی
دوشنبه 17 خرداد 1395, 16:30 عصر
سلام عزیزان این خطا رو دارم :

140740

کدها :


<script>
$(document).ready(function(){
var i=1;
$('#add').click(function(){
i++;
$('#dynamic_field').append('<tr id="row'+i+'"><td><input type="text" name="name[]" id="name" placeholder="Enter Name" class="form-control name_list" /></td><td><button name="remove" id="'+i+'" class="btn btn-danger btn_remove">X</button></td></tr>');
});

$(document).on('click', '.btn_remove', function(){
var button_id=$(this).attr("id");
$('#row'+button_id+'').remove();
});

$('#submit').click(function(){
$.ajax({
url:"name.php",
method:"POST"
data:$('#add_name').serialize(),
success:function(data)
{
alert(data);
$('#add_name')[0].reset();
}
});
});

});
</script>

milad_d993
دوشنبه 17 خرداد 1395, 17:34 عصر
تو خط 17 بعد از method:"POST" علامت کاما (,) نزاشتی؛ بخاطر اون نیست؟؟

پیام حیاتی
دوشنبه 17 خرداد 1395, 20:48 عصر
قرار دادم ، الآن خطای جدید :

140749

rasoul_par
دوشنبه 17 خرداد 1395, 21:04 عصر
ظاهرا باید mime تایپ رو واسه تگ script قرار بدی.
لینک زیر شاید کمک بکنه
<script type="application/javascript">
http://stackoverflow.com/questions/7911689/jquery-why-the-alert-message-is-not-being-displayed

پیام حیاتی
دوشنبه 17 خرداد 1395, 21:17 عصر
.......................................

پیام حیاتی
دوشنبه 17 خرداد 1395, 22:06 عصر
به کمک دوستان همه چیز اوکی شد اما زمانی که submit می کنم از خط زیر خطای Syntax میگیره :


$sql="INSERT INTO user(name) VALUES('".mysqli_real_escape_string($connect, $_POST["name"][$i]."'))";


این کل کدها :


<?php


$connect=mysqli_connect("localhost", "root", "", "test");
$number=count($_POST["name"]);
if($number>1)
{
for($i=0; $i<$number; $i++)
{
if(trim($_POST["name"][$i]) != '')
{
$sql="INSERT INTO user(name) VALUES('".mysqli_real_escape_string($connect, $_POST["name"][$i]."'))";
mysqli_query($connect, $sql);


}
}
echo "Data Inserted";


}


else
{
echo "Enter Name";
}




?>

rasoul_par
سه شنبه 18 خرداد 1395, 08:53 صبح
چندتا نکته که به نظر من باید رعایت کنی:

خاصیت name که برای input گذاشتی برای همه یکیه که اشتباهه، تو به ازای هر input باید یه name مجزا داشته باشی
dataType آژاکس رو مشخص کن، ترجیحا json و برای فرستادن، از متد JSON.stringify استفاده کن
کوئری رو بهتره خارج از حلقه اجرا کنی، کدی مثل کد زیر:


if($number>1) { $sql="INSERT INTO user(name) VALUES "; for($i=0; $i<$number; $i++) { if(trim($_POST["name"][$i]) != '') { $sql .= "('".mysqli_real_escape_string($connect, $_POST["name"][$i]."'))"; } } mysqli_query($connect, $sql); echo "Data Inserted"; }

یه دامپ از $_POST['name'] بزار

Mousavmousab
پنج شنبه 02 دی 1395, 19:06 عصر
سلام
این همه مشکل چرا ؟ بیایید از تایپ اسکریپت استفاده کنید.

چند ویدیو خوب برای شما دوستان در مورد تایپ اسکریپت (typescript) میتونید از اینجا (http://hoolity.com/default.aspx?cat=5017&page=1)دانلود کنید.
اگر کسی هم سایت دانلود آموزش فیلم ویدیویی فارسی میشناسه معرفی کنه.
با تشکر