راکت
حل شده

خطای اتصال به پایگاه داده در PHP

14 پاسخ

درود دوستان...
می خوام پروژه ای با PHP خام بنویسم که هر کاری می کنم به پایگاه داده وصل نمیشه!
وب سرور Lamp لینوکس می باشد.
کد اتصال به پایگاه داده :

<?php
$dbhost ="localhost";
$dbuser ="cmss";
$dbname ="cms";
$dbpass =123456;

$connect_db = mysqli_connect($dbuser, $dbname, $dbpass);

if ($connect_db) {
    echo"اتصال به پایگاه داده با موفقیت انجام شد.";
}else{
    echo"خطا در اتصال به پایگاه داده";
}
?>
رایموند
رایموند
@Raymond
ثبت پرسش جدید

پاسخ‌ها

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

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

بهترین پاسخ

از طریق PDO وصل شدم:

<?php
$servername = "localhost";
$username = "cmss";
$password = "123456";

try {
    $conn = new PDO("mysql:host=$servername;dbname=cms", $username, $password);
    // set the PDO error mode to exception
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    echo "با موفقیت به پایگاه داده متصل شد"; 
    }
catch(PDOException $e)
    {
    echo "Connection failed: " . $e->getMessage();
    }
?>
داود خانی
داود خانی
@davoodkhany

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

سلام خسته نباشی تو terminal بزن sudo mysql ببین نصبه
اگه سوالی داشتی در خدمتم منم این مشکلو داشتم تو لینوکس یادم نیست چطور پیداش کردم باید ارورتو ببینم.
https://t.me/davoodkhany72

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

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

@davoodkhany
درود...
وب سرور Lamp همراه با Mysql نصب است:

Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 32
Server version: 10.1.34-MariaDB-0ubuntu0.18.04.1 Ubuntu 18.04

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

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

داود خانی
داود خانی
@davoodkhany

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

کانکش باید به این صورت باشه تا اونجایی که می دونم .
mysql_connect=mysqli_connect("$dbhost","$dbuser","$dbpass","$dbname")

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

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

داود خانی
داود خانی
@davoodkhany

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

sudo systemctl status apache2
وضعیت آپاچی رو ببین

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

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

@davoodkhany
فعال است:

● apache2.service - The Apache HTTP Server
   Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
  Drop-In: /lib/systemd/system/apache2.service.d
           └─apache2-systemd.conf
   Active: active (running) since Wed 2019-01-30 08:40:46 +0330; 2h 4min ago
  Process: 952 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS)
 Main PID: 1133 (apache2)
    Tasks: 9 (limit: 4579)
   CGroup: /system.slice/apache2.service
           ├─1133 /usr/sbin/apache2 -k start
           ├─1141 /usr/sbin/apache2 -k start
           ├─1142 /usr/sbin/apache2 -k start
           ├─1143 /usr/sbin/apache2 -k start
           ├─1144 /usr/sbin/apache2 -k start
           ├─1145 /usr/sbin/apache2 -k start
           ├─6532 /usr/sbin/apache2 -k start
           ├─6533 /usr/sbin/apache2 -k start
           └─6534 /usr/sbin/apache2 -k start
داود خانی
داود خانی
@davoodkhany

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

sudo systemctl status mysql
رایموند
رایموند
@Raymond

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

@davoodkhany
Mysql فعال است:

● mariadb.service - MariaDB 10.1.34 database server
   Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled)
   Active: active (running) since Wed 2019-01-30 08:40:49 +0330; 2h 17min ago
     Docs: man:mysqld(8)
           https://mariadb.com/kb/en/library/systemd/
  Process: 1224 ExecStartPost=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
  Process: 1211 ExecStartPost=/etc/mysql/debian-start (code=exited, status=0/SUCCESS)
  Process: 985 ExecStartPre=/bin/sh -c [ ! -e /usr/bin/galera_recovery ] && VAR= ||   VAR=`/usr/bin/galera_recovery`; [ $? -eq 0 ]   && systemc
  Process: 970 ExecStartPre=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
  Process: 955 ExecStartPre=/usr/bin/install -m 755 -o mysql -g root -d /var/run/mysqld (code=exited, status=0/SUCCESS)
 Main PID: 1129 (mysqld)
   Status: "Taking your SQL requests now..."
    Tasks: 27 (limit: 4579)
   CGroup: /system.slice/mariadb.service
           └─1129 /usr/sbin/mysqld
داود خانی
داود خانی
@davoodkhany

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

دیگه نمی دونم چه مشکلی باید باشه ولی من اخرین بار که دیگه نتونستم درستش کنم اومدم nginx نصب کردم الانم دارم ازش استفاده می کنم نه lamp نه زمپی چیزی شما هم می تونید nginx نصب کنید باز بگردید دنبال راه حل نتونستید nginx نصب کنید.البته تو سایتهای برون مرزی

Javad jafariniya
Javad jafariniya
@javad1994ma

خب شما باید پسورد رو داخل رشته قرار بدی
اینجوری
"123456"
@RaymondDragon

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

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

@javad1994ma
امتحان کردم ... متصل نمیشه.

محمد
محمد
@general

تخصص: تازه وارد بک اند

منم این مشکل رو دارم منتها از زمپ استفاده میکنم
ولی این رو تو خروجی نشون میده
$dbname= 'mohammad';
خروجی
SQLSTATE[HY000] [1049] Unknown database 'mohammad'
و همچنان مشکلم پا برجاس

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

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

@general
درود خوبی ..
اگر لاراول استفاده می کنید, دستور زیر را بزن:

php artisan cache:clear

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

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