PDA

View Full Version : سوال: مشکل در افزایش و کاهش تعداد محصولات فروشگاه



esy2012
سه شنبه 23 دی 1393, 09:54 صبح
سلام دوستان

ببخشید من توی بخش افزایش و کاهش تعداد محصولات سبد خرید به یه مشکل برخوردم ممنون میشم اگه راهنماییم کنید. :اشتباه:


127519

در عکس بالا وقتی روی مثبت رکود بالا کلیک میکنم رکود پایین اضافه میشه و همچنین وقتی روی مثبت رکورد پایین کلیک میکنم بازم رکورد پایین اضافه میشه ، ولی وقتی رکورد پایین رو خذف میکنم بعدش روی مثبت رکورد بالا کلیک میکنم درست کار میکنه.

:عصبانی++::عصبانی::عصبانی++:

wallfa
سه شنبه 23 دی 1393, 10:10 صبح
این موضوع توی تاپیک جاوااسکریپت معرفی کنید . یا اینکه لینک وب سایت کامل بذارید تا بررسی بشه !

captain_hamid
سه شنبه 23 دی 1393, 11:18 صبح
شما باید به هر input یک id یکتا اختصاص بدین. مثلا id محصول یا هر چیزی که تو این فرم تکرار نشه.

esy2012
سه شنبه 23 دی 1393, 15:37 عصر
<form name="sabtnayahi" method="post"> <table class="table" width="100%" border="0">
<tr>
<th>تصویر</th>
<th>نام کالا</th>
<th>مدل</th>
<th>تعداد</th>
<th>قیمت واحد</th>
<th>قیمت کل</th>
<th>حذف</th>
</tr>
<?php
//error_reporting(0);
if(isset($_SESSION['loginsession']))
{
$q=sprintf("SELECT productid from tbl_bascket WHERE userid=('%s')AND flag='0';",
$_SESSION['loginsession']);
$r=$db->query($q);
while($rows=$r->fetch())
{
$idkala=$rows['productid'];
}

$q=sprintf("SELECT tbl_bascket.*, tbl_moarefikalamaster.*, tbl_mojodikala.* ,tbl_allinonepc.*

FROM tbl_bascket


JOIN tbl_moarefikalamaster
ON tbl_moarefikalamaster.IDKala = tbl_bascket.productid

JOIN tbl_mojodikala
ON tbl_mojodikala.IDmoarefikala = tbl_moarefikalamaster.IDKala

JOIN tbl_allinonepc
ON tbl_allinonepc.IDMoarefikala = tbl_mojodikala.IDmoarefikala

WHERE `tbl_bascket`.`userid`=('%s') AND flag='0'"
,$_SESSION['loginsession']);

$r=$db->query($q);
while($rows=$r->fetch())
{
$productid=$rows['productid'];
?>


<tr>

<td>
<a href="product.html">
<?php
$img='../img/img_AllInOnePC/'.$rows['myFile1'];
echo "<img src='$img' width='60' height='60' >";
?>
</a>
</td>

<td>
<a href=""><strong><?php echo $rows['ENname']; ?></strong></a>
</td>

<td><?php echo $rows['model'] ?></td>

<td>
<form method="post">
<input type="submit" name="mosbat" value="+">
</form>
<input name="tedad" type="text" size="1" value="<?php echo $rows['tedad'] ; ?>" />
<form method="post">
<input type="submit" name="manfi" value="-">
</form>
</td>

<td>
<span><?php echo $rows['feyforosh'] ; ?>&nbsp;تومان</span>
</td>

<td>

<span>&nbsp;تومان</span>
</td>

<td>
<a href="#"><img src="sabadkharid/img/remove.png" style="width:24px;height:22px;"></a>
</td>

</tr>


<?php } }?>
</table>
</form>

esy2012
سه شنبه 23 دی 1393, 15:40 عصر
بعد دست.رات بالا این دستور رو نوشتم

if(isset($_POST['mos'])) {
updatebasket($db,$productid,$userid);
}

بعد اینم تابعی که فراخوانی میشه

<?php function updatebasket($db,$productid,$userid)
{
$tedad='';
$q=sprintf("SELECT tedad from tbl_bascket WHERE userid='%s' AND productid='%s' ;"
,$userid,$productid);
$r=$db->query($q);
while($rows=$r->fetch())
{
$tedad=$rows['tedad'];
}
$tedad=$tedad+1;
$sql=sprintf("UPDATE tbl_bascket SET tedad='%s' WHERE userid='%s' AND productid='%s' ;"
,$tedad,$userid,$productid);
$r=$db->query($sql);
$tedad='';

}
?>

id1385
سه شنبه 23 دی 1393, 17:44 عصر
با سلام
برای اینکه فروشگاه یوزر پسند باشه بهتره کلاً عملیات خرید رو با جیگوئری انجام بدید
اگه کمی در مورد جیکوئری سرچ کنید یادگیریش خیلی کار خاصی نداره و دستتون رو بسیار باز میکنه توی کد نویسی

این سورس رو دانلود کنید
توی این سورس هم نحوه کد یکتا و استفاده از اون و هم استفاده از جیکوئری هست و به کرات ازش استفاده شده

http://barnamenevis.org/showthread.php?475713-%D9%86%D9%85%D9%88%D9%86%D9%87-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D8%AB%D8%A8%D8%AA-%D8%B3%D9%81%D8%A7%D8%B1%D8%B4-%D8%A8%D8%A7-php-%D9%88-jquery-(%D9%86%D8%A7%D9%82%D8%B5)&p=2132428&viewfull=1#post2132428


موفق باشید

esy2012
سه شنبه 23 دی 1393, 21:20 عصر
با سلام
برای اینکه فروشگاه یوزر پسند باشه بهتره کلاً عملیات خرید رو با جیگوئری انجام بدید
اگه کمی در مورد جیکوئری سرچ کنید یادگیریش خیلی کار خاصی نداره و دستتون رو بسیار باز میکنه توی کد نویسی

این سورس رو دانلود کنید
توی این سورس هم نحوه کد یکتا و استفاده از اون و هم استفاده از جیکوئری هست و به کرات ازش استفاده شده

http://barnamenevis.org/showthread.php?475713-%D9%86%D9%85%D9%88%D9%86%D9%87-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D8%AB%D8%A8%D8%AA-%D8%B3%D9%81%D8%A7%D8%B1%D8%B4-%D8%A8%D8%A7-php-%D9%88-jquery-(%D9%86%D8%A7%D9%82%D8%B5)&p=2132428&viewfull=1#post2132428


موفق باشید


سلام دوست عزیزم

ممنونم که پاسخ دادین ولی من مشکلی در زیبایی فروشگاه ندارم و توی بیشتر جاهاشم از ایجکس استفاده کردم همچنین توی یک هفته باید بیشتر جاهاشو تحویل شرکت بدم دیگه وقت نمکنم جیکوئری یاد بگیرم.فقط مشکلم تو این قسمت هست اگه اینجا حل بشه دیگه پروژم رو به اتمام هست

اولش کومبو باکس گذاشته بودم برای تعداد به این شکل

<script type="text/javascript"> //<![CDATA[
function loadFile()
{
var xmlhttp;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("divid").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("POST","ajax-post.php",true);
xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
xmlhttp.send("a=" + var_dump($_POST));
}
//]]>
</script>



<form method="post">
<select name="typeoflogin" onchange="loadFile()" >
<option value="0">0</option>
<option value="1">1</option>
</select>
</form>




اینم دستورات قسمت ajax-post.php

<?php $host="localhost";
$dbname="db_shopingcenter";
$user="root";
$pass="";
$db=new pdo("mysql:host=$host;dbname=$dbname",$user,$pass);



error_reporting(0);
$a = $_POST['a'];
$sql=sprintf("INSERT INTO tbl_bascket (userid,productid,feyforosh)
VALUES ('%s','%s','%s');",'2','6',$a);
$r= $db->query($sql);
?>

همه چیزش درست کار میکنه فقط مقدار فرم رو که توشم کومبو باکس قرار دادم رو به تابع نمیفرسته اگه راهنمایی کنید بقیه ی چیزا حله ، ایجکسشم کار میکنه فقط مقدار فیلد که قراره فرم بفرسته خالی دیده میشه یا راه حل های دیگرو هم امتحان کردم متغییر رو رشته میشناسه.

id1385
سه شنبه 23 دی 1393, 22:05 عصر
مگه دوستان کمک کنن، من فقط جیکوئری رو بلدم




من مشکلی در زیبایی فروشگاه ندارم

این قالب اون اسکریپت هست

esy2012
سه شنبه 23 دی 1393, 22:28 عصر
دوستان هرکی بلده خواهشا کمک کنید فقط مشکلم فرستادن متد پست به صورت ایجکس به یه قسمت دیگه هست :گریه::عصبانی++:

esy2012
چهارشنبه 24 دی 1393, 08:41 صبح
دوستان راه حلشو پیدا کردم :بامزه::لبخند:


<td> <a href="updatetedad.php?productid=<?php echo $productid ?>&userid=<?php echo '0'?>&operator=+"><p>+</p></a>
<input name="tedad" type="text" size="1" value="<?php echo $rows['tedad'] ; ?>" />
<a href="updatetedad.php?productid=<?php echo $productid ?>&userid=<?php echo '0'?>&operator=-"><p>-</p></a>
</td>


<?php require('../funcs/connect.php');
if(isset($_GET['productid'])&& isset($_GET['userid'])&& isset($_GET['operator']))
{
$productid=$_GET['productid'];
$userid=$_GET['userid'];
$operator=$_GET['operator'];
$q=sprintf("SELECT tedad from tbl_bascket WHERE userid='%s' AND productid='%s' ;"
,$userid,$productid);
$r=$db->query($q);
while($rows=$r->fetch())
{
$tedad=$rows['tedad'];
}
if($operator=='+')
$tedad=$tedad+1;
else
$tedad=$tedad-1;
$sql=sprintf("UPDATE tbl_bascket SET tedad='%s' WHERE userid='%s' AND productid='%s' ;"
,$tedad,$userid,$productid);
$r=$db->query($sql);
$tedad='';
header('location:cart.php');
}
?>

ممنونم از همه دوستان