Foros del Web » Programando para Internet » PHP »

Ayuda con php y sql...

Estas en el tema de Ayuda con php y sql... en el foro de PHP en Foros del Web. Mi problema es que deseo enviar datos a una db de sql.... tengo dos archivos index.php y reg.php index.php Código PHP: <?php mysql_connect ( "localhost" ...
  #1 (permalink)  
Antiguo 17/12/2006, 14:24
Avatar de ..::MaRcOs::..  
Fecha de Ingreso: diciembre-2006
Mensajes: 328
Antigüedad: 17 años, 4 meses
Puntos: 3
Exclamación Ayuda con php y sql...

Mi problema es que deseo enviar datos a una db de sql....
tengo dos archivos index.php y reg.php

index.php
Código PHP:
<?php
mysql_connect
("localhost","root","");
mysql_select_db("datos"); 
echo
'
<form action="reg.php" method="POST">
<p>NOMBRE 
<input name="nombre" type="text" id="nombre"></p>
<p>APELLIDO
<input name="apellido" type="text" id="apellido"></p>
<p>EDAD
<input name="edad" type="text" id="edad"></p>
<p>CIUDAD
<input name="ciudad" type="text" id="ciudad"></p>
<p><input type="submit" name="Submit" value="Enviar"></p>
</form>'
;
?>
reg.php
Código PHP:
<?php
mysql_connect
("localhost","root","");
mysql_select_db("datos"); 
mysql_query("INSERT INTO datos (nombre, apellido, edad, ciudad) VALUES 
('$nombre', '$apellido', '$edad', '$ciudad')"
); 
echo 
'datos registrados';
?>
El problema es q se registra solo el campo id de la db....
ese campo id es auto_increment

Pero el resto de los campos no se llenan
si alguien me puede ayudar le agradeceria mucho...

Creo q el problema esta es aqui...
('$nombre', '$apellido', '$edad', '$ciudad')");
  #2 (permalink)  
Antiguo 17/12/2006, 14:27
Avatar de jerkan  
Fecha de Ingreso: septiembre-2005
Mensajes: 1.607
Antigüedad: 18 años, 7 meses
Puntos: 19
Re: Ayuda con php y sql...

¿Por qué no compruebas el valor que te devuelve la funcion mysql_query? Es una buena costumbre hacerlo. También deberías hacer uso de la función mysql_error que te ayudará a localizar el error.

Un saludo
  #3 (permalink)  
Antiguo 17/12/2006, 15:13
Avatar de ..::MaRcOs::..  
Fecha de Ingreso: diciembre-2006
Mensajes: 328
Antigüedad: 17 años, 4 meses
Puntos: 3
Re: Ayuda con php y sql...

podrias ser
un poco mas explicito
  #4 (permalink)  
Antiguo 17/12/2006, 15:37
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Re: Ayuda con php y sql...

Prueba tambien en lugar de usar globales cambiar por sus valores reales:
Código PHP:
// Descargas los valores del formulario:
$nombre $_POST['nombre'];
$apellido $_POST['apellido']; 
  #5 (permalink)  
Antiguo 17/12/2006, 17:46
Avatar de jerkan  
Fecha de Ingreso: septiembre-2005
Mensajes: 1.607
Antigüedad: 18 años, 7 meses
Puntos: 19
Re: Ayuda con php y sql...

Cita:
Iniciado por ..::MaRcOs::.. Ver Mensaje
podrias ser
un poco mas explicito
Claro, yo lo pondría así
Código PHP:
$resultado mysql_query("SELECT ...");

if( 
$resultado == false )
{
echo(
"Error. ".mysql_error());
}
else
{
echo(
"Ok.");

Un saludo
  #6 (permalink)  
Antiguo 17/12/2006, 22:43
Avatar de ..::MaRcOs::..  
Fecha de Ingreso: diciembre-2006
Mensajes: 328
Antigüedad: 17 años, 4 meses
Puntos: 3
Re: Ayuda con php y sql...

Muchas gracias
problema resuelto


<?php
mysql_connect("localhost","root","");
mysql_select_db("prueba");
mysql_query("INSERT INTO noticias (titulo, texto, autor)
VALUES ('$_POST[titulo]', '$_POST[texto]', '$_POST[autor]')");
echo 'datos registrados';
?>

PD: Cualquier duda estare preguntando jejeje
me disculpan hay...es que estoy aprendiendo....
  #7 (permalink)  
Antiguo 18/12/2006, 00:11
Avatar de ..::MaRcOs::..  
Fecha de Ingreso: diciembre-2006
Mensajes: 328
Antigüedad: 17 años, 4 meses
Puntos: 3
Re: Ayuda con php y sql...

me disculpan la preguntadera, pero como dige antes estoy aprendiendo y no tengo mucha nocion del tema...

deseo leer la db
lo q he entendido de un manual de php q tengo es q se hace asi
pero no me quiere funcionar...q dicen?

<?php
mysql_connect("localhost","root","");
mysql_select_db("datos");
$datos=mysql_query("SELECT * FROM noticias WHERE id=6");
echo ".$datos_ok['titulo'].' .$datos_ok['texto'].";
?>
  #8 (permalink)  
Antiguo 18/12/2006, 04:11
Avatar de jerkan  
Fecha de Ingreso: septiembre-2005
Mensajes: 1.607
Antigüedad: 18 años, 7 meses
Puntos: 19
Re: Ayuda con php y sql...

Está claro que no te miras el bien código, eh. ¿No ves nada raro en estas dos líneas?

$datos=mysql_query("SELECT * FROM noticias WHERE id=6");
echo ".$datos_ok['titulo'].' .$datos_ok['texto'].";
  #9 (permalink)  
Antiguo 18/12/2006, 12:03
Avatar de ..::MaRcOs::..  
Fecha de Ingreso: diciembre-2006
Mensajes: 328
Antigüedad: 17 años, 4 meses
Puntos: 3
Re: Ayuda con php y sql...

Disculpe mi ingnorancia men...es que apenas estoy aprendiendo
entenderas por que no me fijo bien...estoy seguro q usted tambien
paso por estas de estar preguntando...pero de alguna forma se aprende
de todas maneras muchas gracias....y pues no preguntare mas....
Saludos
  #10 (permalink)  
Antiguo 18/12/2006, 12:14
Avatar de Lord of freaks  
Fecha de Ingreso: octubre-2004
Ubicación: Madrid
Mensajes: 334
Antigüedad: 19 años, 6 meses
Puntos: 2
Re: Ayuda con php y sql...

Prueba con algo así porque imagino que el error lo tienes en el "echo"

Código PHP:
echo "entre las comillas escribes textos las cierras y pones un punto y despues una variable".$datos_ok['titulo']." despues si necesitas más texto pues otro punto para encadenar y vuelves a abrir y cerrar comillas y dentro el texto ".$datos_ok['texto']."espero se entienda"
Y activa los mensajes privados porque si preguntas por privado !!!!habrá que poder responderte!!! :)

Un saludo
__________________
Una vez un elemental de rayos mató una tribu entera de tritones.

¡¡ El sólo quería darse un baño !!

http://www.frikilandia.com

Neither Fu Nor Fa
  #11 (permalink)  
Antiguo 18/12/2006, 17:28
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Re: Ayuda con php y sql...

Bueno si realmente quieres aprender tu problema es este:

La funcion mysql_query te devuelve desde un string (con el query) un recurso para poder trabajar sobre el. Ahora como se trabaja sobre un recurso?, usas las diversas funciones de mysql_fetch_*, para obtener los datos, por decir, queremos regresar el array:

Código PHP:
$query "SELECT * FROM `tabla`";
$result mysql_query$query );
if( !
is_resource$result ) ) {
     die( 
"Problema con el Query: " mysql_error();
}

while( 
$datos mysql_fetch_array$result ) ) { // Ve como utilizamos $result ;-)
var_dump$datos );

Podras ver toda la informacion del query que enviaste.
  #12 (permalink)  
Antiguo 19/12/2006, 04:57
Avatar de ..::MaRcOs::..  
Fecha de Ingreso: diciembre-2006
Mensajes: 328
Antigüedad: 17 años, 4 meses
Puntos: 3
Re: Ayuda con php y sql...

Gracias GatorV por tu ayuda...
El codigo q me quedo, y me funciona a las maravillas fue este:
Código PHP:
<?php
mysql_connect
("localhost","root","");
mysql_select_db("prueba"); 
$query = ("SELECT * FROM noticias WHERE id=1");
$result mysql_query$query );
if( !
is_resource$result ) ) {
die(
"Problema con el Query:".mysql_error());
}
while( 
$datos mysql_fetch_array$result ) ) {
echo 
'Titulo: '.$datos["titulo"].'<br>Noticia: '.$datos["texto"].'';
}  
?>
Bueno hay ya lo voy cuadrando para asunto de apariencia
Salu2
  #13 (permalink)  
Antiguo 19/12/2006, 05:18
Avatar de jerkan  
Fecha de Ingreso: septiembre-2005
Mensajes: 1.607
Antigüedad: 18 años, 7 meses
Puntos: 19
Re: Ayuda con php y sql...

Cita:
Iniciado por ..::MaRcOs::.. Ver Mensaje
Disculpe mi ingnorancia men...es que apenas estoy aprendiendo
entenderas por que no me fijo bien...estoy seguro q usted tambien
paso por estas de estar preguntando...pero de alguna forma se aprende
de todas maneras muchas gracias....y pues no preguntare mas....
Saludos
Tranquilo, hombre. No intentaba ser grosero ni nada por el estilo. Es sólo que lo vi muy claro. Por lo demás, pregunta todo lo que quieras que para eso estamos.
Un saludo.
  #14 (permalink)  
Antiguo 19/12/2006, 08:35
Avatar de helthon  
Fecha de Ingreso: junio-2005
Ubicación: Lima
Mensajes: 549
Antigüedad: 18 años, 10 meses
Puntos: 7
Re: Ayuda con php y sql...

haber si asi lo entiendes mejor
en una nueva pagina creas esto
conexion.php
Código PHP:
<? 
$dbhost
="localhost";  // host del MySQL (generalmente localhost)
$dbusuario="agustin"// aqui debes ingresar el nombre de usuario
                      // para acceder a la base
$dbpassword="mipass"// password de acceso para el usuario de la
                      // linea anterior
$db="ejemplo";        // Seleccionamos la base con la cual trabajar
$conexion mysql_connect($dbhost$dbusuario$dbpassword);
mysql_select_db($db$conexion);
?>
pagina de tu consulta.php
Código PHP:
include_once ("conexion.php");
$consulta mysql_query"SELECT * FROM noticias WHERE id='1'" )
$row mysql_fetch_array$consulta );
$titulo $row['titulo'];
$texto $row['texto'];

echo 
'Titulo: '.$titulo.'<br>Noticia: '.$texto.''
Lee un poco mas de esto include_once
mysql_fetch_array
__________________
HELTHON FUENTES
FLORERIA FLORES PERU Floresperu.com.pe
Garantizamos que cada entrega de flores será de la más alta calidad y frescura
  #15 (permalink)  
Antiguo 28/12/2006, 21:07
Avatar de ..::MaRcOs::..  
Fecha de Ingreso: diciembre-2006
Mensajes: 328
Antigüedad: 17 años, 4 meses
Puntos: 3
Re: Ayuda con php y sql...

problema solucionado
tengo otra duda...


<?php
if(empty($_GET['modulo']))
$pagina= "inicio.php";
else
$pagina= $_GET['modulo'];
?>

<div id="Layer2" style="position:absolute; width:555px;
height:115px; top: 246px; left: 195px;"><?php include('$pagina'); ?></div>

necesito q si no se envia nada cargue inicio.php y que si se le envia
index.php?modulo=productos.php cargue esa pagina...

pero ese codigo me vota este error
Warning: main($pagina) [function.main]: failed to open stream: No such file or directory in c:\wamp\www\pagina\index2.php on line 21

Warning: main() [function.include]: Failed opening '$pagina' for inclusion (include_path='.;C:\php5\pear') in c:\wamp\www\pagina\index2.php on line 21

espero me puedan colaborar
salu2
  #16 (permalink)  
Antiguo 29/12/2006, 01:32
 
Fecha de Ingreso: octubre-2004
Ubicación: Barcelona
Mensajes: 195
Antigüedad: 19 años, 6 meses
Puntos: 7
Re: Ayuda con php y sql...

Las variables entre comillas simples no se convierten a su valor... tiene que ser:
Código PHP:
<?php include($pagina); ?>
Aparte de esto, es una muy mala práctica de seguridad no comprobar los datos que vienen del navegador. Antes de seguir busca en el foro por seguridad y encontraras muchas referencias. Creo que todos los que ayudamos respondiendo en temas como este deberiamos estar más atentos a este tema ya que puede llevar muchos disgustos...
  #17 (permalink)  
Antiguo 29/12/2006, 02:34
Avatar de ..::MaRcOs::..  
Fecha de Ingreso: diciembre-2006
Mensajes: 328
Antigüedad: 17 años, 4 meses
Puntos: 3
Re: Ayuda con php y sql...

solucionado el problema muchas gracias
pero podrias ser un poco mas explicito en lo de seguridad
salu2
  #18 (permalink)  
Antiguo 29/12/2006, 05:26
 
Fecha de Ingreso: octubre-2004
Ubicación: Barcelona
Mensajes: 195
Antigüedad: 19 años, 6 meses
Puntos: 7
Re: Ayuda con php y sql...

mmmmhhh... las FAQ, esas grandes desconocidas de los foros...

Mirando en el índice de FAQ de PHP he encontrado este post sobre seguridad donde encontrarás la información.

De entrada decirte que no puedes fiarte de que sea fiable lo que venga de un $_GET, ya que se puede modificar fácilmente, y más si la dirección es del tipo pagina=loquesea.php, ya que cualquiera puede poner pagina=../ruta/a/un/script/chungo, por ejemplo.
  #19 (permalink)  
Antiguo 03/01/2007, 23:25
Avatar de ..::MaRcOs::..  
Fecha de Ingreso: diciembre-2006
Mensajes: 328
Antigüedad: 17 años, 4 meses
Puntos: 3
Re: Ayuda con php y sql...

listo todo va bien hasta hay, pero tengo una pequeña consulta, en mi portal en el index necesito sacar las 2 ultimas noticias, perfecto el unico es q me sale normal una arriba y abajo la otra....

yo quisiera q me saliera la primera y la otra al lado y no abajo, es posible esto o no?...

muchas gracias...
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 22:10.