Error de conexion desde formulario PHP a MySQL

Cerrado
AFRAHA77 Mensajes enviados 1 Fecha de inscripción viernes, 26 de octubre de 2012 Estatus Miembro Última intervención viernes, 26 de octubre de 2012 - 26 oct 2012 a las 01:09
elfuerte59 Mensajes enviados 136 Fecha de inscripción viernes, 22 de mayo de 2009 Estatus Miembro Última intervención martes, 19 de mayo de 2020 - 8 nov 2012 a las 22:14
Hola,

Ojal puedan ayudarme soy nuevo usando PHP y MySQL, hice un formulario en PHP para carpturar infirmacion y que esta se vaya a una base de datos que cree en MySQL pero al momento de ejecutar enviar en el formulario me dice que hay un error de conexion, lo raro es que ya funcionaba pero hace una semana dejo de funcionar y no encuentro la falla. Agradecria mucho me ayudaran

les pego el codigo

Codigo del formulario

<html>
<header>
<title>mexico3</title>
<img src="C:\Documents and Settings\AFranyu\Desktop\PROYECTOS\PROYECTO\PROYECTO A DESARROLLAR\mexico.jpg" width="90" height="80" alt="Tamaño original" border="0">

</header>
<body>

<font color="#006690" size="8" face="TAHOMA, Arial, Helvetica, sans-serif">
<strong>MEXICO</strong><br><br>
</font>

<div align="left">

<em><font color="#006690" size="5" face="TAHOMA, Arial, Helvetica, sans-serif">
<strong>SERVICES </strong></font></em>
<font color="#000080" size="3" face="Arial, Helvetica, sans-serif"><br>

</div>

<div align="RIGHT">

<em><font color="#006690" size="5" face="TAHOMA, Arial, Helvetica, sans-serif">
<strong>INFORMATION MANAGEMENT 2012</strong></font></em>
<font color="#999990" size="4" face="Arial, Helvetica, sans-serif"><br>
ETO's ACTIVITIES</font><br><br><hr><br>
<font color="#FF0000" size="3" face="Arial, Helvetica, sans-serif">
Part number administration</font>

</div>

<font color="#006690" size="3" face="Arial, Helvetica, sans-serif">
<form action="" method="post">

<?php
if(isset($_POST['guardar'])){
require_once ('coneccion.php');
$query_part="INSERT INTO parts (FECHA, PART, DESCRIPCION, SOLICITADO, RAZON, URGENTE)VALUE('".$_POST['txt_fecha']."','".$_POST['txt_numpart']."','".$_POST['txt_descripcion']."','".$_POST['txt_solicitado']."','".$_POST['cmb_razon']."','".$_POST['rad_btn']."')";
mysql_query($query_part)or die(mysql_error("Error no se pudo hacer la consulta"));
}
?>
Fecha            
<input name="txt_fecha" type="text" id="sldoProv" size="10" maxlength="20">
<font size="2">( Fecha en que se solicito )</font><br><br>
Numero de parte            
<input name="txt_numpart" type="text" id="sldoProv" size="30" maxlength="30">
<font size="2">( Parte a analizar )</font><br><br>
Descripcion            
<input name="txt_descripcion" type="text" id="sldoProv" size="30" maxlength="30">
<font size="2">( Descripcion de la parte )</font><br><br>
Solicitado por            
<input name="txt_solicitado" type="text" id="sldoProv" size="30" maxlength="40">
<font size="2">( quien solicita la carga )</font><br><br>
Razon            
<SELECT Razon="Razon" name="cmb_razon">
<OPTION>---------------</OPTION>
<OPTION value="Orden">Orden</OPTION>
<OPTION value="ocn">OCN</OPTION>
<OPTION value="Autoloading">Autoloading</OPTION>
<OPTION value="Proyecto">Proyecto</OPTION>
</SELECT>
<font size="2">( que requiere esta parte? )
<font color="#006690" size="3" face="Arial, Helvetica, sans-serif">
Urgente            
<font size="2"></font>
Si<INPUT name="rad_btn" type="radio" value="SI">
No<INPUT name="rad_btn" type="radio" value="NO"><BR>
</font><br><br>
</font>
<input type="submit" value="Enviar" name="guardar"><br><br>
<input type="reset" value="Limpiar"><br>


</form>

</body>
</html>




A continuacion el codigo de conexion

<?php
@$db = mysql_pconnect("localhost","root","");

if (!$db)
{
echo "Error: No se ha podido conectar a la base de datos. Por favor, prueba de nuevo mas tarde.";
exit;
}
mysql_select_db("eto");
?>


3 respuestas

elfuerte59 Mensajes enviados 136 Fecha de inscripción viernes, 22 de mayo de 2009 Estatus Miembro Última intervención martes, 19 de mayo de 2020 69
28 oct 2012 a las 18:23
primeramente el nombre del archivo de base de datos supongo que es conexion.php y lo tienes mal escrito en require_once ('coneccion.php');
En caso de no ser ese el problema prueba con esta nueva conexion solo cambiale los datos

<?php
$servidor='localhost';
$usuario='root';
$contrasena='';
$basededatos='tu base de datos';
$conexion= mysql_pconnect($servidor,$usuario,$contrasena)or die(mysql_error());

mysql_select_db($basededatos, $conexion);
?>
0
Hola elfuerte59 muchas gracias por tomarte el tiempo para ayudarme.

Ya hice el cambio de nombre a conexion.php no funciono y utilice el codigo que me diste para la conexion pero ahora tengo un mensaje diferente.

este es el error y buque en la linea 39 pero no encontre nada raro

Warning: mysql_error(): supplied argument is not a valid MySQL-Link resource in C:\WEB\APACHE\htdocs\Rockwell\php_mysql_3AFH.php on line 39

Esta es la parte del codigo de la conexion

<?php
if(isset($_POST['guardar'])){
require_once ('conexion.php');
$query_part="INSERT INTO parts (FECHA, PART, DESCRIPCION, SOLICITADO, RAZON, URGENTE)VALUE('".$_POST['txt_fecha']."','".$_POST['txt_numpart']."','".$_POST['txt_descripcion']."','".$_POST['txt_solicitado']."','".$_POST['cmb_razon']."','".$_POST['rad_btn']."')";
mysql_query($query_part)or die(mysql_error("Error no se pudo hacer la consulta"));
}
?>

y especificamente este es la linea 39

mysql_query($query_part)or die(mysql_error("Error no se pudo hacer la consulta"));

Ojala tengas oportunidad de revisarlo y ayudarme te lo agradeceria mucho

asi fue como me quedo el PHP de conexion
<?php
$servidor='localhost';
$usuario='root';
$contrasena='';
$basededatos='eto';
$conexion= mysql_pconnect($localhost,$root,"")or die(mysql_error("Error no se pudo hacer la consulta"));

mysql_select_db($eto, $conexion);
?>

Gracias de nuevo por tu ayuda
0
elfuerte59 Mensajes enviados 136 Fecha de inscripción viernes, 22 de mayo de 2009 Estatus Miembro Última intervención martes, 19 de mayo de 2020 69
8 nov 2012 a las 22:14
HOla nuevamente si te fijas no es un error que te esta dando el php si no un warning indicandote que hay algo que no esta bien puesto y efectivamente en tu codigo php donde inserta los datos con el query_part esta concatenando las variables y lo esta poniendo con mas de 2 comillas lo que te proboca ese mensaje.

Lo normal seria que recuperaras esas variables antes de enviarla a la base de datos por cuestion de seguridad y esas cosas. pero bueno si ese no es el caso por lo menos tendrias que hacerlo de esta manera.

Otra cosa al ejecutar la consulta siempre se inclulle la conexion a la base de datos si es con la que te puse mas arriba la conexion seria $basededatos.

<?php
if(isset($_POST['guardar'])){
require_once ('conexion.php');

//recuperarmos las variables que llegan de nuestro formulario

$variable1=$_POST['txt_fecha'];
$variable2=$_POST['txt_numpart'];
$variable3=$_POST['txt_descripcion'];
$variable4=$_POST['txt_solicitado'];
$variable5=$_POST['cmb_razon'];
$variable6=$_POST['rad_btn'];

//hacemos la consulta a la base de datos y la almacenamos en una variable

$query_part="INSERT INTO parts (FECHA, PART, DESCRIPCION, SOLICITADO, RAZON, URGENTE)VALUE('$variable1','$variable2','$variable3','$variable4','$variable5','$variable6')";

//ejecutamos la consulta

mysql_query($query_part,$basededatos)or die(mysql_error("Error no se pudo hacer la consulta"));
}

?>

Con esto funcionaria perfectamente sin ningun tipo de problema.
Todo sobre programacion web
0