راکت
حل شده

خطای پی اچ پی

16 پاسخ

سلام و عرض ادب خدمت همگی
چجوری این ارور برطرف میشه عکس پایگاه داده کد ها و ارور رو میفرستم
 تصویر

 تصویر


<html lang="fa" dir="rtl">
<head>
<meta charset=utf-8" />
<title>اضافه کردن دسته بندی</title>
<link rel="stylesheet" href="https://roocket.ir/css/style.css">
</head>
<body>
    <?php
            $connect = mysqli_connect('localhost', 'root', '', 'mobileshop');
//          mysqli_query($connect, "SET NAMES UTF8");
            if (isset($_POST['btn-send'])) {
                $category_name = $_POST['title_category'];
                $res = mysqli_query($connect, "INSERT INTO `category` (`title_category`) VALUES('$category_name')");
                if ($res == 1) {
                    echo '<p class="msg">اطلاعات با موفقیت ذخیره شد</p>';
                }
                else {
                    echo '<p class="msg">نام دسته بندی تکراری است</p>';             }
                }
     ?>
     <div class="form-container">
        <form action="" method="POST">
            <label id="label">نام دسته بندی محصول: </label>
            <input type="text" name="title_category" size="30"/>
            <input type="submit" name="btn-send" value="ثبت" class="btn-1">
        </form>
     </div>

     <script src="Js/script.js"></script>
</body>
</html>

</body></html>
@hadikhanian
@sinashahoveisi

ثبت پرسش جدید

پاسخ‌ها

16
علیرضا
علیرضا
@alireza.gh147
بهترین پاسخ

اگه کسی بلده راهنمایی کنه ثواب داره ..

saman khoshghadam
saman khoshghadam
@thethinkerdev

تخصص: برنامه نویس وب

سلام
title_category رو ببین secondary key تعریفش کردی
نمیتونه تکراری باشه
ظاهرا یه asus داری میخوای یکی دیگه ثبت کنی تکراری

علیرضا
علیرضا
@alireza.gh147csc

اره میدونم میخوام اون ارور رو نده else اجرا بشه

شاید پاسخ شما همین‌جا باشد

سینا خاقانی
سینا خاقانی
@sina.it91

تخصص: توسعه دهنده بک‌اند

@alireza.gh147csc
سلام
else شما اجرا نمیشه چون دیتابیس به خطا میخوره
راه حل اینه که یکبار select کنید و اگر چیزی با اون مقدار پیدا نکردید بعد عملیات insert را اجرا کنید

علیرضا
علیرضا
@alireza.gh147

منظورتون متوجه نشدم.
کدشو مینویسید.

علیرضا
علیرضا
@alireza.gh147csc

میشه کدشو بنویسید لطفا ممنون.
اگه کسی دیگه هم پی اچ پی وارده راهنمایی کنه

علیرضا
علیرضا
@alireza.gh147

 تصویر
اگه کسی بلده راهنمایی کنه

سینا خاقانی
سینا خاقانی
@sina.it91

تخصص: توسعه دهنده بک‌اند

@alireza.gh147csc
سلام
وقتی برای کسی پیام میذارید حتما آیدی اون رو منشن کنید تا نوتیفیکیشن پیام شما برای فرد ارسال شود.
این لینک رو مطالعه کنید

علیرضا
علیرضا
@alireza.gh147

باشه حتما ممنون ولی نشد .
@sina.it91

علیرضا
علیرضا
@alireza.gh147

اگه کسی بلده بگه این چجوری اوکی میشه تکراری بود الس فراخوانی بشه.
@endworld رایموند جان بلدی شما؟؟

رایموند
رایموند
@Raymond

تخصص: مختصص وردپرس - برنامه نویس لاراول

@alireza.gh147
درود خوبی...
دقیقا مشکلت چیه؟

علیرضا
علیرضا
@alireza.gh147

ممنون که جواب دادی
نمبدونم چجوری else اجرا میشه فیلد categorytitle وقتی تکراری باشه خطا میده و else اجرا نمیشه
categorytitle هم از نوع unique گذاشتم .
اگه لازمه دوباره عکس کدهارو بفرستم.
@endworld
@sina.it91

رایموند
رایموند
@Raymond

تخصص: مختصص وردپرس - برنامه نویس لاراول

@alireza.gh147csc
فکر کنم اون کلید نقره باید در id ست شده باشد و هم auto_increment به درستی تنظیم کنید.

علیرضا
علیرضا
@alireza.gh147

یعنی دقیقا چه کاری باید انجام بدم
میشه بیشتر توضیح بدی رایموند
@endworld
@AlirezaQolamian
@hadikhanian
@sinashahoveisi

رایموند
رایموند
@Raymond

تخصص: مختصص وردپرس - برنامه نویس لاراول

@alireza.gh147
این کلید نقره ای title_category حذف بشه...
کد زیر به صورت PDO نوشتم:

if($_POST){

    // include database connection
    include 'db.php';

    try{

        // insert query
        $query = "INSERT INTO categories SET title=:title";

        // prepare query for execution
        $stmt = $con->prepare($query);

        // posted values
        $title=htmlspecialchars(strip_tags($_POST['title']));

        // bind the parameters
        $stmt->bindParam(':title', $title);

        // Execute the query

        if($stmt->execute()){
            echo "<div class='alert alert-success'>با موفقیت ثبت شد</div>";
        }else{
            echo "<div class='alert alert-danger'>خطا در ثبت اطلاعات</div>";
        }

    }

    // نمایش خطا
    catch(PDOException $exception){
        die('ERROR: ' . $exception->getMessage());
    }
}

این mysqli منسوخ شده و سعی کنید به صورت PHP PDO بنویسید.
اگر تمایل می تونم مینی پروژه که قبلا نوشتم به اشتراک بزارم.

علیرضا
علیرضا
@alireza.gh147

Mamnon raymond aziz in codi ke neveshti hanoz be savade man ghad
namide
Mishe ye vaghti bezarid ba anydesk vas shi mamnon misham
chon bayad be oon shekl benevisam
Mamnon misham komak koni okesh konam
aghaye khaniyan shoma nemitoni rahnamaie koni.
@hadikhanian

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام