Tweaks / Addons A.K.A. The Underground > 3rd party apps integratie in DSM
Mysql connectie naar MariaDB 10 via PHP
(1/1)
relumaro:
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.
Wyodor:
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 :
--- Code: ---<?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 !";
?>
--- Einde van code ---
relumaro:
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
--- Code: ---<?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_HOST, DB_USER, DB_PASS, DB_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";
?>
--- Einde van code ---
Wyodor:
Deze regel verwijderen :
--- Code: ---$mysqli = new mysqli("127.0.0.1", "user", "password", "database", 3306);
--- Einde van code ---
Je zou eventueel nog een SELECT uit een table kunnen doen om iets uit database ‘Inhoud’ te tonen.
Voor de rest werkt het goed.
relumaro:
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.....
Navigatie
[0] Berichtenindex
Naar de volledige versie