راکت
حل شده

کجای کدم رو اشتباه نوشتم - PHP

10 پاسخ

این جدول دیتابیس منه

-- phpMyAdmin SQL Dump
-- version 4.9.7
-- https://www.phpmyadmin.net/
--
-- Host: localhost:3306
-- Generation Time: Nov 08, 2021 at 07:00 PM
-- Server version: 10.3.31-MariaDB
-- PHP Version: 7.3.30

SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
SET AUTOCOMMIT = 0;
START TRANSACTION;
SET time_zone = "+00:00";

/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8mb4 */;

--
-- Database: `alextube_tm`
--

-- --------------------------------------------------------

--
-- Table structure for table `product_up`
--

CREATE TABLE `product_up` (
  `id` int(11) NOT NULL,
  `uid` mediumtext NOT NULL,
  `title` mediumtext NOT NULL,
  `versions` mediumtext NOT NULL,
  `birthday` mediumtext NOT NULL,
  `timepicker` mediumtext NOT NULL,
  `description` mediumtext NOT NULL,
  `desctext` mediumtext NOT NULL,
  `filenew` mediumtext NOT NULL,
  `filesql` mediumtext NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

--
-- Indexes for dumped tables
--

--
-- Indexes for table `product_up`
--
ALTER TABLE `product_up`
  ADD PRIMARY KEY (`id`);

--
-- AUTO_INCREMENT for dumped tables
--

--
-- AUTO_INCREMENT for table `product_up`
--
ALTER TABLE `product_up`
  MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=18;
COMMIT;

/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;

و اینم کدم

                       $sql2="insert into product_up(uid,title,versions,birthday,timepicker,description,desctext,filenew,filesql) values(?,?,?,?,?,?,?,?,?)";
                       $res2=$connect->prepare($sql2);
                       $res2->bindvalue(1,$fetproduct['id']);
                       $res2->bindvalue(2,$_POST['title']);
                       $res2->bindvalue(3,$_POST['versions']);
                       $res2->bindvalue(4,$_POST['birthday']);
                       $res2->bindvalue(5,$_POST['timepicker']);
                       $res2->bindvalue(6,$_POST['description']);
                       $res2->bindvalue(7,$_POST['desctext']);
                       $res2->bindvalue(8,$namesql);
                       $res2->bindvalue(9,$namesql_2);
                       if($res2->execute())
                       {                            
                        echo '<div class="alert alert-success fade in">
                        <button data-dismiss="alert" class="close close-sm" type="button">
                        <i class="icon-remove"></i>
                        </button>
درخواست شما ارسال شد پس از برسی کارشناسان ******* و تایید آپدیت جدید برایتان ایمیل ارسال میشود
                        </div>';
                       }else{
                        echo '<div class="alert alert-block alert-danger fade in">
                        <button data-dismiss="alert" class="close close-sm" type="button">
                            <i class="icon-remove"></i>
                        </button>
درخواست شما ارسال نشد,دوباره تلاش کنید
                        </div>';
                       }

کجای این کدم اشتباه است آخه
@gomnam
@hekmati
@ali.bayat
@hesammousavi
@Alimotreb
@milad
@elyas.dev
@mohaligateway

ثبت پرسش جدید

پاسخ‌ها

10
امانوئل
امانوئل
@emnatkins

تخصص: :) بـالـاخـَرـہ ڪـَم و زیـاد بلدیم

بهترین پاسخ

جوابشو یافتم
مقدار filesql و title خالی بود
مرسی از همه برای مشارکت
@mohammad.hekmaty
@websaz
@afsharmahmoodian
@abdolrahman

Ibo Kiani
Ibo Kiani
@abdoki7788

تخصص: Backend developer

بگین چه اروری میده که دوستان بهتر بتونن پاسخ بدن

امانوئل
امانوئل
@emnatkins

تخصص: :) بـالـاخـَرـہ ڪـَم و زیـاد بلدیم

ایمپورت نمیکنه دیگه ارورشم مشخصه تو کد PHP

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

امانوئل
امانوئل
@emnatkins

تخصص: :) بـالـاخـَرـہ ڪـَم و زیـاد بلدیم

هیچکی بلد نیس؟؟؟

افشار محمودیان
افشار محمودیان
@afsharmahmoodian

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

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

if($res2->execute() == false){  
    echo $res2->error
}

اینطوری میتونین بفهمین مشکلش چیه ...

امانوئل
امانوئل
@emnatkins

تخصص: :) بـالـاخـَرـہ ڪـَم و زیـاد بلدیم

چیزی نمایش نداد
@afsharmahmoodian

افشار محمودیان
افشار محمودیان
@afsharmahmoodian

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

در مورد prepared statement مطالعه کنید و دیباگ کردنش

سبحان مولایی
سبحان مولایی
@websaz

تخصص: برنامه‌نویس وب: Python :: Django :: Node :: Php :: Laravel :: JS :: React :: React Native

سلام.
1 مطمئن بشید مقادیر وجود داره
2 ارتباط با دیتابیس رو چک کنید
3 مطمئن بشید کد sql شما درست هست

محمد حکمتی
محمد حکمتی
@mohammad.hekmaty

تخصص: مثلا backend

دوست عزی بجای اون if else یک try catch بزارید و توی catch مقدار Exception رو برگردونید دقیق نمیدونم با php pure چجور نوشته میشه ولی متن ارور رو بر میگردونه راحت تر به جواب میرسیم.

سبحان مولایی
سبحان مولایی
@websaz

تخصص: برنامه‌نویس وب: Python :: Django :: Node :: Php :: Laravel :: JS :: React :: React Native

دیباگ کردن خیلی مهمه. توصیه می کنم قبل از اجرای sql یک Validation قرار بدید توضیحات بیشتر

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

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