una paso pagina ejemplos datos crear conexion conectar con como archivo php mysql database web server-side

php - paso - pagina web con base de datos mysql



Conexiones de bases de datos PHP simples (5)

var $hostname; var $username; var $password; var $database; public function dbconnect($hostname=DB_HOST, $username=DB_USER, $password=DB_PASS, $database=DB_NAME) { $this->hostname = $hostname; $this->username = $username; $this->password = $password; $this->database = $database; $this->connect(); $this->select_db(); } public function connect() { $this->handler = mysql_pconnect($this->hostname, $this->username, $this->password) or $this->throw_error(mysql_error(), __LINE__); } public function select_db() { mysql_select_db($this->database, $this->handler) or $this->throw_error(mysql_error(), __LINE__); } public function DoSelect($query) { $result = mysql_query($query); $grandvalue=""; $RecordCounter=0; if(!mysql_error() && mysql_num_rows($result)) { if(mysql_num_rows($result)>0) { // Make sure we get some rows back before we try to fetch them while ($row = mysql_fetch_array($result,MYSQL_NUM)) { $grandvalue[$RecordCounter]=$row; $RecordCounter++; } return $grandvalue; } else { return null; } } } public function DoInsert($query) { //echo $query; $this->dbconnect(); $val=mysql_query($query); // echo $val; } public function DoUpdate($query) { $this->dbconnect(); $val=mysql_query($query); return $val; } public function DoDelete($query) { $this->dbconnect(); mysql_query($query); } } $connection = new mysql_db(); $connection->dbconnect(); ?>`enter code here`

Estoy haciendo una página simple para probar una conexión de base de datos. Cuando intenté acceder desde mi navegador, dice:

Error del Servidor

El sitio web encontró un error al recuperar http://localhost:8888/blah/blah/test.php . Puede estar fuera de servicio por mantenimiento o configurado incorrectamente.

Aquí hay algunas sugerencias:

Recargue esta página luego. HTTP Error 500 (Error interno del servidor): se encontró una condición inesperada mientras el servidor intentaba completar la solicitud.

Todo lo que hago es conectarme a una base de datos y mostrar las tablas. Esto es lo que tengo hasta ahora como el código PHP:

<?php // Get Variables $dbname = $_GET["dbname"]; $dbusername = $_GET["dbusername"]; $dbpass = $_GET["dbpass"]; $dbhost = $_GET["dbhost"]; $connection = mysql_connect("$dbhost","$dbusername","$dbpass"); if (!$connection) { die(''Could not connect: '' . mysql_error()); } else { echo "Connected"; $dbcheck = mysql_select_db("$dbname"); if (!$dbcheck) { echo mysql_error(); }else{ echo "<p>Successfully connected to the database ''" . $database . "''</p>/n"; // Check tables $sql = "SHOW TABLES FROM `$database`"; $result = mysql_query($sql); if (mysql_num_rows($result) > 0) { echo "<p>Available tables:</p>/n"; echo "<pre>/n"; while ($row = mysql_fetch_row($result)) { echo "{$row[0]}/n"; } echo "</pre>/n"; } else { echo "<p>The database ''" . $database . "'' contains no tables.</p>/n"; echo mysql_error(); } } // some code mysql_close($con); ?>

Mi error en los registros de Apache de WAMP es:

[03-Feb-2013 22:47:37 UTC] PHP Parse error: syntax error, unexpected end of file in /Applications/MAMP/htdocs/coursemanager/default/verify1.php on line 52

¿Qué sería un final de archivo inesperado?


Es una conexión de base de datos PHP muy simple

<?php $dbhost = "dbhostname"; $dbusername = "dbusername"; $dbpassword = "dbpassword"; $dbname = "dbname"; $connection = mysql_connect($dbhost, $dbusername, $dbpassword) or die(''Could not connect''); $db = mysql_select_db($dbname); ?>


Olvidó a} al final para cerrar: else{ echo "Connected";

<?php // Get Variables $dbname = $_GET["dbname"]; $dbusername = $_GET["dbusername"]; $dbpass = $_GET["dbpass"]; $dbhost = $_GET["dbhost"]; $connection = mysql_connect("$dbhost", "$dbusername", "$dbpass"); if (!$connection) { die(''Could not connect: '' . mysql_error()); } else { echo "Connected"; $dbcheck = mysql_select_db("$dbname"); if (!$dbcheck) { echo mysql_error(); } else { echo "<p>Successfully connected to the database ''" . $database . "''</p>/n"; // Check tables $sql = "SHOW TABLES FROM `$database`"; $result = mysql_query($sql); if (mysql_num_rows($result) > 0) { echo "<p>Available tables:</p>/n"; echo "<pre>/n"; while ($row = mysql_fetch_row($result)) { echo "{$row[0]}/n"; } echo "</pre>/n"; } else { echo "<p>The database ''" . $database . "'' contains no tables.</p>/n"; echo mysql_error(); } } } // some code. no need to close mysql and no need to close php


Además, $database es una variable indefinida. Debe ser $dbname en lugar de $database de $database en su contexto.


El uso de PDO (extensión PHP) es un método confiable y eficiente para conectarse a MySQL. PDO también brinda más configuración a los usuarios y también puede manejar excepciones.

El código de conexión PDO será así:

$hostname=''localhost'';$username=''root'';$password=''''; try { $dbh = new PDO("mysql:host=$hostname;dbname=stickercollections",$username,$password); $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); // <== add this line echo ''Connected to Database<br/>''; } catch(PDOException $e) { echo $e->getMessage(); }

Al usar el método PDO, puede evitar estos 500 errores y otras excepciones. Puede configurar mensajes de error globales de forma profesional.

Referencia: conecta php a la base de datos