PHP定位条目

时间:2012-08-23 10:00:39

标签: php position

我对PHP很新,所以请善待:)。 我一直致力于为客户提供一个系统,可以将产品添加到页面,删除和编辑产品。 现在我正在进行定位,所以我创建了一个mysql条目“position”。

我的表格有一个自动递增的ID,标题,描述和位置。

我已设法将定位设置为最新上传,例如,如果我有3个推文,则最新上传将获得位置4.这是上传脚本:

//UPLOAD SCRIPT

    if (isset($_POST['upload'])) {
        $dirupload = "../images/";
        $dirupload = $dirupload . basename( $_FILES['image-upload']['name']);
        $titleupload = $_POST['title-upload'];
        $descriptionupload = $_POST['desc-upload'];
        $imageupload = ($_FILES['image-upload']['name']);
        $uploadedfileupload = $_FILES['image-upload']['tmp_name'];
        $uploadedfiletypeupload = $_FILES['image-upload']['type']; 



        $query="SELECT * FROM promotions ORDER BY position";
        $result=mysql_query($query);
        $num=mysql_num_rows($result);
        $add=$num+1;


        if (!($uploadedfiletypeupload =="image/pjpeg" OR $uploadedfiletypeupload =="image/jpeg" OR $uploadedfiletypeupload =="image/jpg")){
            echo "L'image doit être en .jpg ou .jpeg";
        }else if (move_uploaded_file($_FILES['image-upload']['tmp_name'], $dirupload)){    
            $sql="INSERT INTO promotions (title, description, position) VALUES ('$titleupload','$descriptionupload','$add')";
            if (!mysql_query($sql,$con)){
                die('Error: ' . mysql_error());
            }



            $newnameupload = "../images/" . mysql_insert_id() . ".jpg";
            rename ("../images/$imageupload","$newnameupload");    
            $orig_imageupload = imagecreatefromjpeg("../image/$newnameupload");
            $sm_imageupload = imagecreatetruecolor(96,96);
            imagecopyresampled($sm_imageupload,$orig_imageupload,0,0,0,0,96,96,imagesx($orig_imageupload),imagesy($orig_imageupload));
            imagejpeg($sm_imageupload, $newnameupload, 100);

        }else{
            echo "Problem";
        }
    }

现在我的问题是用“向上”和“向下”条目来改变位置,我设法将当前位置加1或减1,问题是我需要做与下一个或上一个相反的做法,这是“up”脚本:

if (isset ($_POST['up'])){
        $id=$_POST['id'];
        $position=$_POST['position'];
        $newPos=$position-1;

        mysql_query("UPDATE promotions SET position='$newPos' WHERE id='$id'");


    }

所以我需要找到前一行并添加1,例如:如果我有第二个条目我要放到第一个,单击“向上”按钮,它向上移动(这是有效的)但我需要找到旧的第一个位置并将其向下移动一次(这就是问题)。

希望我很清楚,并提前感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

认为这应该在更新当前产品之前放置

mysql_query("UPDATE promotions SET position='$position' WHERE position='$newPos'");