Synology-Forum.nl

Tweaks / Addons A.K.A. The Underground => 3rd party apps integratie in DSM => Topic gestart door: relumaro op 15 januari 2021, 22:50:31

Titel: Mysql connectie naar MariaDB 10 via PHP
Bericht door: relumaro op 15 januari 2021, 22:50:31
Hoi,

Wie help mij verder....
Waarom werkt Mysql_connect niet.
PHP pagina werkt alleen maakt geen verbinding met de MariaDB10...

PHP pagina loopt niet verder dan "echo "<BR> Debug = 1";"
Wat doe ik fout..
Database bestaat  gebruiker ook inloggen via PhpMyadmin werkt ook.

<?php
         /*Connecting, selecting database
           Mariadb 10 */
              
                 
        define ("DB_HOST", "localhost"); // database host name
      define ("DB_USER", "moi"); //  database user
        define ("DB_PASS", "****"); // database password
        define ("DB_NAME", "Inhoud"); // database name
         
        /* see if PHP is working */
        echo "Date " . date("Y/m/d") . "<br>";
      echo "Time " . date("h:i:sa")."<br>";
      echo "<br> Connecting to: " . DB_HOST;
      echo "<br> User :  ".DB_USER ;
   
       echo "<BR> Debug = 1";
      
      Echo "<br> Make a connection with Database....";               
      $conn = mysql_connect(DB_HOST, DB_USER, DB_PASS)or die("Couldn't make connection.");
            
       echo "<BR> Debug = 2";
      
        $db = mysql_select_db(DB_NAME) or die("Couldn't select database");
      
       echo "<BR> Debug = 3";
                 
        if(! $conn ) {
            die('Could not connect: ' . mysql_error());
         }
         
         echo 'Connected successfully';
         mysql_close($conn);
      
         echo "End !";
      ?>


Help aub.
Titel: Re: Mysql connectie naar MariaDB 10 via PHP
Bericht door: Wyodor op 16 januari 2021, 07:50:15
mysql_connect is verouderd.

https://www.php.net/manual/en/function.mysql-connect.php

Gebruik mysqli :

https://www.php.net/manual/en/mysqli.quickstart.connections.php

En gebruik '127.0.0.1:3307' ipv 'localhost'.

PS om code te plaatsen, gebruik het # icoontje :

<?php
         
/*Connecting, selecting database
           Mariadb 10 */
              
                  
        
define ("DB_HOST""localhost"); // database host name
      
define ("DB_USER""moi"); //  database user
        
define ("DB_PASS""****"); // database password
        
define ("DB_NAME""Inhoud"); // database name
         
        /* see if PHP is working */
        
echo "Date " date("Y/m/d") . "<br>";
      echo 
"Time " date("h:i:sa")."<br>";
      echo 
"<br> Connecting to: " DB_HOST;
      echo 
"<br> User :  ".DB_USER ;
   
       echo 
"<BR> Debug = 1";
      
      Echo 
"<br> Make a connection with Database....";                
      
$conn mysql_connect(DB_HOSTDB_USERDB_PASS)or die("Couldn't make connection.");
            
       echo 
"<BR> Debug = 2";
      
        
$db mysql_select_db(DB_NAME) or die("Couldn't select database");
      
       echo 
"<BR> Debug = 3";
                  
        if(! 
$conn ) {
            die(
'Could not connect: ' mysql_error());
         }
         
         echo 
'Connected successfully';
         
mysql_close($conn);
       
         echo 
"End !"
      
?>
Titel: Re: Mysql connectie naar MariaDB 10 via PHP
Bericht door: relumaro op 16 januari 2021, 14:40:20
Bedankt voor antwoorden,

Maar ook met mysqli  lukt het niet...
Ik krijg niet eens de foutmeldingen.
De html pagina wordt opgebouwd door de server en getoond op de client, tot aan het maken van de connectie.

Moet ik nog ergens iets instellen of zo of iets instaleren...mysql, firewall ???
ik snap er geen snars meer van.
Onderstaand is geïnstalleerd en volgens het info-center zijn het de laatste nieuwe versies.

DS215J
DSM6.2.3
PHP 7.4
Apache 2.4
MariaDB10 10.3.21
PhPMydmin 4.9.2



<?php
        
define ("DB_HOST""127.0.0.1:3307"); // database host name
define ("DB_USER""moi"); //  database user
                
define ("DB_PASS""*****"); // database password
                
define ("DB_DATA""Inhoud"); // database name
         
        /* lets see if PHP is working */
                
echo "Date " date("Y/m/d") . "<br>";
echo "Time " date("h:i:sa")."<br>";
echo "<br> Connecting to: " .DB_HOST;
echo "<br> User :  ".DB_USER ;
    
/*Connecting, selecting database Mariadb 10 */
Echo "<br> Make a connection with Database...."

$mysqli = new mysqli(DB_HOSTDB_USERDB_PASSDB_DATA);
                  if (
$mysqli->connect_errno) {
                      echo 
"Failed to connect to MySQL: (" $mysqli->connect_errno ") " $mysqli->connect_error;
                  }

                 echo 
$mysqli->host_info "\n";

                 
$mysqli = new mysqli("127.0.0.1""user""password""database"3306);
                  if (
$mysqli->connect_errno) {
                      echo 
"Failed to connect to MySQL: (" $mysqli->connect_errno ") " $mysqli->connect_error;
                   }

                   echo 
$mysqli->host_info "\n";
?>
Titel: Re: Mysql connectie naar MariaDB 10 via PHP
Bericht door: Wyodor op 16 januari 2021, 15:13:24
Deze regel verwijderen :

$mysqli = new mysqli("127.0.0.1", "user", "password", "database", 3306);
Je zou eventueel nog een SELECT uit een table kunnen doen om iets uit database ‘Inhoud’ te tonen.

Voor de rest werkt het goed.
Titel: Re: Mysql connectie naar MariaDB 10 via PHP
Bericht door: relumaro op 21 januari 2021, 12:16:48
Probleem opgelost...

Ik ben er uiteindelijk achter gekomen waarom foutmeldingen niet werden weer gegeven en het leek als of PHP niet werkte.
Dit wil ik wel met jullie delen voor het geval iemand daar ook problemen mee heeft.

De oplossing zat in "WEBSTATION" instellingen.
In webstation zit de ieen tabje voor <php> instellingen.
Ik heb hier de "Display_errors in PHP weergeven" aangezet,daarna kwamen er wel foutmeldingen op de webpagina.. ::)
Daarna kreeg ik de melding dat "mysqli niet werd ondersteund, maar ook dit kon je aanzetten "to allow acces to mysql 4.1 en hoger"  ook de PHP versie moestworden aangepast naar 7.4

nu werkt het zoals ik zou verwachten.....
Dank jullie voor aandacht en tips.....