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

کد های html من
<!DOCTYPE html>
<html lang="fa" dir="rtl">
<head>
<meta charset="UTF-8">
<link rel="stylesheet" href="https://roocket.ir/css/style.css">
<title>ثبت نام در سایت</title>
</head>
<body>
<div class="containear">
<form action="eng/do-register.php" method="POST">
<input type="text" name="name" placeholder="نام و نام خانوادگی ...">
<input type="number" name="number" placeholder=" تلفن همراه... ">
<input type="email" name="email" placeholder="ایمیل ... ">
<input type="password" name="password" placeholder="رمز ... ">
<input type="submit" class="btn" value="ثبت نام ">
</form>
</div>
</body>
</html>
کد php جهت اتصال به پایگاه داده
<?php
$db = mysqli_connect('localhost','vesal','Ve0829##0829','vesalalizadeh');
mysqli_query($db, "SET NAMES utf8");
?>
کد php جهت ارسال اطلاعات به دیتابیس
<?php
include_once 'db.php';
$name = $_POST["name"];
$number = $_POST["number"];
$email = $_POST["email"];
$password = $_POST["password"];
$register = mysqli_query($db, "INSERT INTO users (name, number, email, password) VALUES ('$name', '$number', '$email', '$password')");
if($register){
echo "ثبت نام شما با موفقیت انجام شد ";
}else {
echo "خطا در برقراری ارتباط با پایگاه داده";
}@alizadevesal
کل ستون ها رو ویرایش کنید و برای همه موارد به جز id تیک null رو بزنید. برای id هم اگه تیک AI رو نزدید حتما اون رو تیک بزنید. ویرایش که انجام شد دوباره تست کنید.
اگه میتونید با همین کد یک کاربر رو ذخیره کنید، احتمالا:
1- بعضی از ستون ها رو NULLABLE نذاشتید و دارید دیتای NULL یا خالی ارسال میکنید براش
2- حداقل نام یک ستون رو بصورت unique تعریف کردید و دوباره برای اون دارید دیتای مشابه ذخیره میکنید مثلا name, number و...
بنظرم با خطای پایگاه داده رو بگیرید ببینید چی میگه
بجای کد:
echo "خطا در برقراری ارتباط با پایگاه داده";
کد زیر رو قرار بدید تا ببینید چه خطایی میده
echo("Error description: " . $register -> error);@amdk.1987 ممنون بابت پاسختون با خطای زیر مواجه شد
Notice: Trying to get property 'error' of non-object in C:\xampp\htdocs\register\eng\do-register.php on line 12
Error description:
شاید پاسخ شما همینجا باشد
@amdk.1987
اتفاق خواصی نیفتاد
@amdk.1987 به نظر مشکل از چی هستش ؟
سلام
برای همه ی ثبت نام ها پیغام موفقیت چاپ میشه و فقط اولی ثبت میشه؟ یا موارد بعدی خطا دریافت میکنی؟
@hamedkh72
سلام بله خیر برای همه ثبت نام ها خطا نمیده فقط برای دومی یعنی فقط به طور کلی یک نفر رو ذخیره میکنه و برای همه خطا میده
اگه امکانش هست از تب structure که داخل تصویری که از دیتابیس فرستادین قابل مشاهده س اسکرین شات بگیرید بفرستید.
@amdk.1987 بله چشم

id رو هم باید ارسال کنید یا باید autoincrement بزارید. تیک null رو هم بزنید تا اگه داده ای رو نفرستادید خطا نده
اینجا هست آموزشش
عنوان لینک مورد نظر
@hamedkh72
اقا خیلی ممنون دمت گرم حل شد 3 روزه روش کار میکنم ممنون بابت کمکتون
@hamedkh72
ببخشید مهندس جان php رو از کجا یاد گرفتین ؟
@amdk.1987
از شما هم متشکرم دوست عزیز
فقط یک سوال دیگر من خیلی دوست دارم بک اند کار بشم و تا العان هم فقط به html و css مسلط هستم به نظر شما دوره فرانت اند رو تموم کنم بیام php یا تا اینجا کافیه مستقیم بیام درست روی php به نظر شما باید چیکار کنم ؟
خواهش میکنم.
بنظر من حداقل jquery و bootstrap رو یادبگیرید.
بعدش حتما php رو یادبگیرید
بعد بنظرم وردپرس و قالب نویسی برای وردپرس
و بعدش یه فریمورک کامل مثل لاراول رو یاد بگیرید.
ولی من جای شما باشم دیگه سمت php نمیرم بلکه از اول با python شروع میکنم! دستمزد javaکارها و بعد .netکارها و بعد pythonکارها در شرکتها به مراتب بیشتر هست (منظورم این نیست php بده!!!)
@amdk.1987
فرمایش شما متین دوست عزیز ولی نمی دونم چرا به php حس خواصی دارم 🙄 به نظر شما بازار کار php بده ؟
من چندسالی هست php کار میکنم (لاراول) ولی به سایت jobinja سربزنید متوجه میشید کدام شرکتها چه زبانی رو میخوان و با چه حقوقی. بانکها، ارگانها، سازمانهایی مثل تامین اجتماعی همه یا java هستن یا .net. چون سیستمها از اول با اونها نوشته شده دیگه تغییر نمیدن و البته این شرکتها حقوق خوبی نسبت به یه استارتاپ داره!
@amdk.1987
ببخشید اگه جسارت نباشه درآمدتون از php خوب نیست ؟
@alizadevesal
خواهش میکنم. خوشحال شدم که مشکلتون حل شد.
در حوزه برنامه نویسی به زبان فارسی به نظر من فعلا بهترین آموزش ها برای سایت راکت هست. مگر اینکه در آینده رقیبی پیدا کنه.
وقت خودت رو هم تلف نکن با سایت هایی که فقط ادعا دارن و آموزش هاشون یا خیلی قدیمیه و عملا کاربردی نیستن و یا افرادی تدریس میکنن که حتی به سن قانونی هم نرسیدن. اینجور سایت ها فقط جیب کاربرها رو هدف قرار میدن و به اسم مدرک برنامه نویسی و موارد این چنینی کاربر رو فریب میدن.
یادت باشه برنامه نویسی مدرک نداره. حتی مدرک دانشگاهی هم کسی رو برنامه نویس نکرده. فقط و فقط مشاهده آموزش(فیلم یا کتاب یا هرچیز دیگه ای) و تمرین فراراون در کنارش.
اگه هدف شما اینه که برنامه نویس بک اند بشی باید html ، css و به خصوص javascript رو در حد مطلوب یاد بگیری و بعدش سراغ php برو. بعد از اینه php رو خوب مسلط شدی میتونی یکی از فریمورک های php رو انتخاب کنی و راهتو ادامه بدی.
نظر و پیشنهاد دوستمون هم محترمه ولی بنده یخورده با ایشون هم نظر نیستم. با وجود پیشرفت هایی که داخل javascript اتفاق افتاد مخصوصا از es6 به بعد ، هر کاری که با سادگی با jquery انجام میشد رو الان میتونیم به سادگی با خود javascript انجام بدیم و اینکه در حال حاضر یادگیری javascript از الزامات دنیای وب هست.
در مورد وردپرس هم در صورتی که شما php و لاراول کار کنید اصلا لزومی نداره سمت وردپرس برید. پروژه های فراوانی هستن که با php و لاراول توسعه داده بشن و درگیر شدن با وردپرس از نظر من وقت تلف کردنه. مگر اینکه هدف اصلی شما برنامه نویس وردپرس شدن باشه که در اون صورت قضیه متفاوته.
در مورد زبان php هم اگر مردد هستی میتونی خیلی راحت سایت های کاریابی رو چک کنی و ببینی برای کدوم زبان تقاضا بیشتری هست. همینطور سایت هایی که به صورت فریلنسری پروژه دارن میتونی چک کنی. در ضمن بابت php خیالت راحت باشه حالا حالاها جای کار داره و کنار نمیره.
جناب موسوی هم در مورد این موضوع یه پادکست منتشر کردن که میتونی از این لینک اون رو گوش بدی :
لینک پادکست
و اینکه bootstrap هم میتونی کنار بقیه موارد یاد بگیری.
در ضمن اگه شی گرایی رو بلدی همیشه برای ارتباط با دیتابیس از روش PDO استفاده کن.
کلا دنیای برنامه نویسی انتها نداره . دنبال اینکه برنامه نویسی رو تموم کنی نباش و باید مدام در حال یادگیری باشی. یادگیری مداوم رو با از این شاخه به اون شاخه پریدن اشتباه نگیری. در حوزه کاری خودت باید همیشه دنبال یادگیری باشی و بروز باشی.
اگه زبان انگلیسیت خوبه که عالیه اگه هم نیست تا جایی که بتونی از سایت های انگلیسی زبان استفاده کنی ، انگلیسی رو یاد بگیر.
برای جاوا اسکریپت چهار قدم اول کافیه : دوره های جاوا اسکریپت
برای یادگیری php همه قدم ها لازمه : دوره های php
برای یادگیری برنامه نویسی باید سماجت زیادی داشته باشی. برنامه نویسی یعنی به خطا خوردن و حل کردنش. اگه با برخورد کردن با چند تا اررور قرار باشه کم بیاری و ادامه ندی و انتظار داشته باشی همیشه همه چی اوکی باشه چنین چیزی فقط یه توهمه.
شما این دوره ها رو ببنید و کامل به توصیه ها و نکاتی که جناب موسوی میگن عمل کنید و سخت تمرین کنید و پروژه های مختلف انجام بدید. اگر هم به مشکلی برخورد کردید همینجا مطرح کنید یا داخل گوگل سرچ کنید.
در ضمن یادت باشه بهترین اساتید دنیا هم اگه آموزشی رو منتشر کنن و فقط اونا رو بشینی مثل فیلم سینمایی ببینی به هیج جا نمیرسی. فقط تمرین تمرین تمرین. برای شروع هم از پروژه های ساده شروع کن وگرنه زده میشی.
خیلی چیزا رو بعدها یاد میگیری و به دانشت اضافه میشه ولی برای شروع با php پایه و اساسش همیناس و در ادامه مباحث مختلفی رو یاد میگیری و این راه ادامه دارد...
موفق باشی.