Foros del Web » Programando para Internet » PHP »

comprobar conexion a mysql desde form

Estas en el tema de comprobar conexion a mysql desde form en el foro de PHP en Foros del Web. tengo este code... Código: <form action="insconfig2.php" method="post"> <table> <tr> <td>Servidor de Mysql</td> <td><input type="text" value="localhost" name="server" /></td> </tr> <tr> <td>Usuario de Mysql</td> <td><input type="text" value="" ...
  #1 (permalink)  
Antiguo 23/01/2011, 21:16
 
Fecha de Ingreso: julio-2010
Mensajes: 91
Antigüedad: 13 años, 9 meses
Puntos: 0
comprobar conexion a mysql desde form

tengo este code...
Código:
<form action="insconfig2.php" method="post">
<table>
<tr>
	<td>Servidor de Mysql</td>
	<td><input type="text" value="localhost" name="server" /></td>
</tr>
<tr>
	<td>Usuario de Mysql</td>
	<td><input type="text" value="" name="user" /></td>
</tr>
<tr>
	<td>Password del usuario</td>
	<td><input type="text" value="" name="pass" /></td>
</tr>
<tr>
	<td>Base de datos</td>
	<td><input type="text" value="" name="bd" /></td>
</tr>
</table>
<input type="submit" name="submit" value="enviar" />
</form>
y este
insconfig.php
Código PHP:
Ver original
  1. <?php
  2.  
  3. $server = trim($_POST['server']);
  4. $user = trim($_POST['user']);
  5. $pass = trim($_POST['pass']);
  6. $bd = trim($_POST['bd']);
  7.  
  8.  
  9.    
  10. if(empty($server)){
  11.     echo("Rellene los campos oligatorios");
  12. }elseif(empty($user)){
  13.     echo("Rellene los campos oligatorios");
  14. }elseif(empty($pass)){
  15.     echo("Rellene los campos oligatorios");
  16. }elseif(empty($bd)){
  17.     echo("Rellene los campos oligatorios");
  18. }else{
  19.    
  20.     $archivo = 'config.php';
  21.     $contenido = "<?php
  22. \$dbhost='$server';
  23. \$dbusername='$user';
  24. \$dbuserpass='$pass';
  25. \$dbname='$bd';
  26.  
  27. mysql_connect (\$dbhost, \$dbusername, \$dbuserpass);
  28. mysql_select_db(\$dbname) or die('La Base de datos no ha podido ser seleccionada');
  29. ?>";
  30.     $abrir = fopen("$archivo", "a");
  31.     fwrite($abrir, $contenido);
  32.     fclose($abrir);
  33.     echo ("Archivo de configuracion creado!<br><br>");
  34. }
  35. ?>

pero desde la linea 20 se crea el archivo config.php
pero pueden poner cualquier cosa en el form quedando algo asi

$dbhost='localhost';
$dbusername='fef';
$dbuserpass='fe';
$dbname='fef';

obviamente esta mal, como hago para comprobar los datos de mysql antes de crear el archivo?
  #2 (permalink)  
Antiguo 23/01/2011, 21:20
Avatar de bNd170  
Fecha de Ingreso: agosto-2009
Ubicación: $this->setLocation('Valencia', 'Spain');
Mensajes: 365
Antigüedad: 14 años, 7 meses
Puntos: 13
Respuesta: comprobar conexion a mysql desde form

Con un simple IF en la conexion bastaria, si mysql_connect tiene éxito, pues creas el archivo, sino, no :D

Es decir:
Código PHP:
Ver original
  1. if(mysql_connect(\$dbhost, \$dbusername, \$dbuserpass))
  2. // Aqui escribes el archivo
  #3 (permalink)  
Antiguo 23/01/2011, 21:45
 
Fecha de Ingreso: julio-2010
Mensajes: 91
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: comprobar conexion a mysql desde form

gracias!! daba un error de conexion que se veia feo pero lo solucione con un @ xD

ya quedo, edite el code y ahora me quedo algo asi ^^

saludos y muchas gracias ^^

Código PHP:
Ver original
  1. <?php
  2.  
  3. $server = trim($_POST['server']);
  4. $user = trim($_POST['user']);
  5. $pass = trim($_POST['pass']);
  6. $bd = trim($_POST['bd']);
  7.  
  8.  
  9.  
  10. if(empty($server)){
  11.     echo("Rellene los campos oligatorios");
  12. }elseif(empty($user)){
  13.     echo("Rellene los campos oligatorios");
  14. }elseif(empty($pass)){
  15.     echo("Rellene los campos oligatorios");
  16. }elseif(empty($bd)){
  17.     echo("Rellene los campos oligatorios");
  18. }else{
  19.     if(@mysql_connect($server, $user, $pass))
  20.     {
  21.        
  22.     $archivo = '../config.php';
  23.     $contenido = "<?php
  24. \$dbhost='$server';
  25. \$dbusername='$user';
  26. \$dbuserpass='$pass';
  27. \$dbname='$bd';
  28.  
  29. mysql_connect (\$dbhost, \$dbusername, \$dbuserpass);
  30. mysql_select_db(\$dbname) or die('La Base de datos no ha podido ser seleccionada');
  31. ?>";
  32.     $abrir = fopen("$archivo", "a");
  33.     fwrite($abrir, $contenido);
  34.     fclose($abrir);
  35.     echo ("Archivo de configuracion creado!<br><br>");
  36.    
  37.     }else{ echo"Datos incorrectos"; }
  38.    
  39. }
  40. ?>

Última edición por juan_fer; 23/01/2011 a las 21:51

Etiquetas: comprobar, conexion, mysql, formulario
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:41.