Foros del Web » Programando para Internet » PHP »

Problema con todo PHP

Estas en el tema de Problema con todo PHP en el foro de PHP en Foros del Web. Hola este es mi primer post... Estoy aprendiendo PHP, y vamos ya creo que puedo ponerme a hacer alguna cosilla. Lo que quiero es poner ...
  #1 (permalink)  
Antiguo 19/12/2011, 05:59
dankko
Invitado
 
Mensajes: n/a
Puntos:
Problema con todo PHP

Hola este es mi primer post...

Estoy aprendiendo PHP, y vamos ya creo que puedo ponerme a hacer alguna cosilla.

Lo que quiero es poner en una web que estoy haciendo un sistema de noticias parecido al de un blog y ponerlo en una zona de la página con el típico "leer más" o "read more" y que les conduzca a la noticia completa...

También una base de datos para registrar unas amplias listas de participantes...

Pero el problema es:

Todo script que hago, siguiendo tutoriales, vídeos, con scripts de webs, etc...
Los pongo en dreamweaver y siempre tienen algún error en varias líneas, y por más que reviso siempre no encuentro ninguno...

Se que PHP se actualiza cada poco para mejorar la seguridad y evitar errores, pero es que creo que debe ser mi Dreamweaver... Y claro, tampoco me realizan lo que pretendo hacer, no se conectan con las bases de datos ni nada...

Quiero saber si hace falta alguna actualización de dreamweaver o alguna solucion, o como puedo solucionar estos errores con PHP, porque la verdad es que me urge.
  #2 (permalink)  
Antiguo 19/12/2011, 06:01
Avatar de Eleazan  
Fecha de Ingreso: abril-2008
Ubicación: Ibiza
Mensajes: 1.879
Antigüedad: 16 años
Puntos: 326
Respuesta: Problema con todo PHP

PHP se ejecuta en servidor. ¿Tienes alguno montado? (Xampp, Zend Server, etc)

Si es así, ¿qué error te da? ¿Cuál es el código? :)
__________________
>> Eleazan's Source
>> @Eleazan
  #3 (permalink)  
Antiguo 19/12/2011, 06:08
 
Fecha de Ingreso: octubre-2011
Mensajes: 32
Antigüedad: 12 años, 6 meses
Puntos: 0
Respuesta: Problema con todo PHP

Le pones las etiquetas <?php al empezar y ?> al terminar???
__________________
<?php print("Php2"); ?>
  #4 (permalink)  
Antiguo 19/12/2011, 07:18
dankko
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Problema con todo PHP

Hombre claro que le pongo la apertura y el cierre de etiquetas, le pongo todo xD
Aparte hasta con scripts ya hechos cogidos de páginas, me siguen saliendo líneas de error y no conectan.

Tengo un hosting propio para las bases de datos, pero bueno uso el xampp para probar y aprender php y a ver si me va todo bien, pero repito lo de antes, siempre me salta algún error y por más que busco no se soluciona.
  #5 (permalink)  
Antiguo 19/12/2011, 07:26
Avatar de Patriarka  
Fecha de Ingreso: enero-2011
Ubicación: Moreno, Buenos Aires, Argentina
Mensajes: 2.851
Antigüedad: 13 años, 3 meses
Puntos: 288
Respuesta: Problema con todo PHP

y bueno amigo pone el error que te sale, si no tenemos que ser magos para ayudarte,

vos so' loco!
  #6 (permalink)  
Antiguo 19/12/2011, 08:05
dankko
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Problema con todo PHP

Ahí arriba lo pone, con todo script php que hago, copio, etc y lo pongo en mi dreamweaver, siempre me sale una línea errónea y no me deja realizar lo que pretendo, por ejemplo este script:

Código PHP:
`<?php

include ("Conexion.php");
    
    if(isset(
$_POST['Nombre']) && !empty($_POST['Nombre']) &&
    isset(
$_POST['Posicion']) && !empty($_POST['Posicion']) &&
    isset 
$_POST['Media']) && !empty($_POST['Media']) &&
    isset(
$_POST['Eoriginal']) && !empty($_POST['Eoriginal']) &&
    isset(
$_POST['Enuevo']) && !empty($_POST['Enuevo']))
    (
    
    
$conexion mysql_connect ($host,$user,$pw)or die("Problema al conectar el Host");
    
mysql_select_db($bd,$conexion)or die("Problemas al conectar la bd);
    
    mysql_query("
INSERT INTO basejugadores (NOMBRE,POSICION,MEDIA,EORIGINAL,ENUEVO)
    
VALUES ('$_POST[Nombre]','$_POST[Posicion]','$_POST[Media]','$_POST[Eoriginal]','$_POST[Enuevo]',$conexion);
    echo 
"datos insertados correctamente";
    
    }else(
    echo 
"problema al insertar los datos";
    }
<?
  #7 (permalink)  
Antiguo 19/12/2011, 08:08
Avatar de Eleazan  
Fecha de Ingreso: abril-2008
Ubicación: Ibiza
Mensajes: 1.879
Antigüedad: 16 años
Puntos: 326
Respuesta: Problema con todo PHP

En este, en concreto, no cierras unas comillas:

Código PHP:
 mysql_select_db($bd,$conexion)or die("Problemas al conectar la bd); 
Pero, si dreamweaver te dice q es erroneo, pero PHP no... (probandolo en tu servidor!), simplemente, no hagas caso a dream! :)
__________________
>> Eleazan's Source
>> @Eleazan
  #8 (permalink)  
Antiguo 19/12/2011, 08:23
Avatar de CesarHC  
Fecha de Ingreso: junio-2011
Ubicación: localhost
Mensajes: 566
Antigüedad: 12 años, 11 meses
Puntos: 56
Respuesta: Problema con todo PHP

Tienes muchos errores esto es lo que logre corregir.

Código PHP:
Ver original
  1. <?php
  2.  
  3. include ("Conexion.php");
  4.    
  5.     if(isset($_POST['Nombre']) && !empty($_POST['Nombre']) &&
  6.     isset($_POST['Posicion']) && !empty($_POST['Posicion']) &&
  7.     isset($_POST['Media']) && !empty($_POST['Media']) &&
  8.     isset($_POST['Eoriginal']) && !empty($_POST['Eoriginal']) &&
  9.     isset($_POST['Enuevo']) && !empty($_POST['Enuevo']))
  10.     {
  11.    
  12.   $conexion = mysql_connect($host,$user,$pw) or die("Problema al conectar el Host");
  13.   mysql_select_db($conexion,$bd)or die("Problemas al conectar la bd");
  14.    
  15.     mysql_query("INSERT INTO basejugadores (NOMBRE,POSICION,MEDIA,EORIGINAL,ENUEVO)
  16.    VALUES (".$_POST['Nombre'].",".$_POST['Posicion'].",".$_POST['Media'].",".$_POST['Eoriginal'].",".$_POST['Enuevo']."",$conexion);
  17.     echo "datos insertados correctamente";
  18.      }
  19.     else
  20.      {
  21.     echo "problema al insertar los datos";
  22.     }
  23. ?>
__________________
Solo la práctica no te traicionara ¡¡¡¡¡¡

Seguir el camino tu debes PHP The Right Way.
  #9 (permalink)  
Antiguo 19/12/2011, 08:41
dankko
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Problema con todo PHP

Bueno ahora con el código correjido (por lo de las comillas, el resto lo había hecho como el tutorial que ví) me da un error el enviar los datos que pone "problema al insertar los datos", al menos ya conecta algo.

Tengo estos tres archivos:

Conexion.php:

Código PHP:
<?php

$host 
"localhost";
$user "root";
$pw "root";
$bd "bbddj";

?>
Procesar.php

Código PHP:
 <?php
     
    
include ("Conexion.php");
       
        if(isset(
$_POST['Nombre']) && !empty($_POST['Nombre']) &&
        isset(
$_POST['Posicion']) && !empty($_POST['Posicion']) &&
        isset(
$_POST['Media']) && !empty($_POST['Media']) &&
        isset(
$_POST['Eoriginal']) && !empty($_POST['Eoriginal']) &&
        isset(
$_POST['Enuevo']) && !empty($_POST['Enuevo']))
        {
       
      
$conexion mysql_connect($host,$user,$pw) or die("Problema al conectar el Host");
      
mysql_select_db($conexion,$bd)or die("Problemas al conectar la bd");
       
        
mysql_query("INSERT INTO basejugadores (NOMBRE,POSICION,MEDIA,EORIGINAL,ENUEVO)
       VALUES ("
.$_POST['Nombre'].",".$_POST['Posicion'].",".$_POST['Media'].",".$_POST['Eoriginal'].",".$_POST['Enuevo']."",$conexion);
        echo 
'datos insertados correctamente';
         }
        else
         {
        echo 
'problema al insertar los datos';
        }
    
?>
y la tabla:

Código HTML:
<form action="Procesar.php" method="post" name="form">
<table width="200" border="0">
	<tr>
		<td>Nombre</td>
		<td><input type="text" name="Nombre" /></td>
	</tr>
	<tr>
		<td>Posicion</td>
		<td><input type="text" name"Posicion" /></td>
	</tr>
	<tr>
		<td>Media</td>
		<td><input type="text" name="Media" /></td>
	</tr>
	<tr>
		<td>Eoriginal</td>
		<td><input type="text" name="Eoriginal" /></td>
	</tr>
	<tr>
		<td>Enuevo</td>
		<td><input type="text" name="Enuevo" /></td>
	
	</tr>
	<tr>
	<td>&nbsp;</td>
	<td><input name="Enviar" type="submit" value="Enviar" /></td>
	</tr>
</table>
</form> 
El problema es que no envía los datos...
  #10 (permalink)  
Antiguo 19/12/2011, 08:43
Avatar de Eleazan  
Fecha de Ingreso: abril-2008
Ubicación: Ibiza
Mensajes: 1.879
Antigüedad: 16 años
Puntos: 326
Respuesta: Problema con todo PHP

En vez de
Código PHP:
 mysql_query("INSERT INTO basejugadores (NOMBRE,POSICION,MEDIA,EORIGINAL,ENUEVO) 
       VALUES ("
.$_POST['Nombre'].",".$_POST['Posicion'].",".$_POST['Media'].",".$_POST['Eoriginal'].",".$_POST['Enuevo']."",$conexion); 
Puedes poner que depure la consulta, por ejemplo:
Código PHP:
 mysql_query("INSERT INTO basejugadores (NOMBRE,POSICION,MEDIA,EORIGINAL,ENUEVO) 
       VALUES ("
.$_POST['Nombre'].",".$_POST['Posicion'].",".$_POST['Media'].",".$_POST['Eoriginal'].",".$_POST['Enuevo']."",$conexion) or die(mysql_error()); 
Así mysql te dirá pq falla :)

Edit:

Vamos, que en vez de usar
Código PHP:
mysql_query("aqui la consulta"); 
Se usa:
Código PHP:
mysql_query("aqui la consulta") or die("Error SQL:".mysql_error()); 
__________________
>> Eleazan's Source
>> @Eleazan
  #11 (permalink)  
Antiguo 19/12/2011, 09:01
dankko
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Problema con todo PHP

Cita:
Iniciado por Eleazan Ver Mensaje
En vez de
Código PHP:
 mysql_query("INSERT INTO basejugadores (NOMBRE,POSICION,MEDIA,EORIGINAL,ENUEVO) 
       VALUES ("
.$_POST['Nombre'].",".$_POST['Posicion'].",".$_POST['Media'].",".$_POST['Eoriginal'].",".$_POST['Enuevo']."",$conexion); 
Puedes poner que depure la consulta, por ejemplo:
Código PHP:
 mysql_query("INSERT INTO basejugadores (NOMBRE,POSICION,MEDIA,EORIGINAL,ENUEVO) 
       VALUES ("
.$_POST['Nombre'].",".$_POST['Posicion'].",".$_POST['Media'].",".$_POST['Eoriginal'].",".$_POST['Enuevo']."",$conexion) or die(mysql_error()); 
Así mysql te dirá pq falla :)

Edit:

Vamos, que en vez de usar
Código PHP:
mysql_query("aqui la consulta"); 
Se usa:
Código PHP:
mysql_query("aqui la consulta") or die("Error SQL:".mysql_error()); 

Nada, me sigue apareciendo "problema al insertar los datos"
y no me dice donde está el error...
  #12 (permalink)  
Antiguo 19/12/2011, 09:03
Avatar de Patriarka  
Fecha de Ingreso: enero-2011
Ubicación: Moreno, Buenos Aires, Argentina
Mensajes: 2.851
Antigüedad: 13 años, 3 meses
Puntos: 288
Respuesta: Problema con todo PHP

amogo mostranos el mensaje de error tal cual sale en pantalla
  #13 (permalink)  
Antiguo 19/12/2011, 09:04
Avatar de Eleazan  
Fecha de Ingreso: abril-2008
Ubicación: Ibiza
Mensajes: 1.879
Antigüedad: 16 años
Puntos: 326
Respuesta: Problema con todo PHP

Vale, perdón xD

El "fallo" está aqui:
Código PHP:
 if(isset($_POST['Nombre']) && !empty($_POST['Nombre']) && 
        isset(
$_POST['Posicion']) && !empty($_POST['Posicion']) && 
        isset(
$_POST['Media']) && !empty($_POST['Media']) && 
        isset(
$_POST['Eoriginal']) && !empty($_POST['Eoriginal']) && 
        isset(
$_POST['Enuevo']) && !empty($_POST['Enuevo'])) 
        { 
Alguna de esas condiciones no se cumple ;)
__________________
>> Eleazan's Source
>> @Eleazan
  #14 (permalink)  
Antiguo 19/12/2011, 09:05
Avatar de CesarHC  
Fecha de Ingreso: junio-2011
Ubicación: localhost
Mensajes: 566
Antigüedad: 12 años, 11 meses
Puntos: 56
Respuesta: Problema con todo PHP

No es necesario meter el mysql_query en una variable para que se ejecute?
__________________
Solo la práctica no te traicionara ¡¡¡¡¡¡

Seguir el camino tu debes PHP The Right Way.
  #15 (permalink)  
Antiguo 19/12/2011, 09:10
Avatar de Eleazan  
Fecha de Ingreso: abril-2008
Ubicación: Ibiza
Mensajes: 1.879
Antigüedad: 16 años
Puntos: 326
Respuesta: Problema con todo PHP

Cita:
Iniciado por CesarHC Ver Mensaje
No es necesario meter el mysql_query en una variable para que se ejecute?
No, no lo es.

En caso de ser INSERT, UPDATE o DELETE, no hace falta (solo retorna true o false!). Eso si, si no lo haces no sabes si es exitosa la consulta, o no.

En caso de ser un select, sí, hace falta para poder recorrerlo luego :)
__________________
>> Eleazan's Source
>> @Eleazan
  #16 (permalink)  
Antiguo 19/12/2011, 09:12
Avatar de CesarHC  
Fecha de Ingreso: junio-2011
Ubicación: localhost
Mensajes: 566
Antigüedad: 12 años, 11 meses
Puntos: 56
Respuesta: Problema con todo PHP

Gracias por aclararme la duda en todo caso deberia hacerlo para verificar que es lo que ejecuta la consulta.
__________________
Solo la práctica no te traicionara ¡¡¡¡¡¡

Seguir el camino tu debes PHP The Right Way.
  #17 (permalink)  
Antiguo 19/12/2011, 09:15
Avatar de Eleazan  
Fecha de Ingreso: abril-2008
Ubicación: Ibiza
Mensajes: 1.879
Antigüedad: 16 años
Puntos: 326
Respuesta: Problema con todo PHP

Cita:
Iniciado por CesarHC Ver Mensaje
Gracias por aclararme la duda en todo caso deberia hacerlo para verificar que es lo que ejecuta la consulta.
Tampoco tiene pq.

Por ejemplo, tu puedes poner:
Código PHP:
if( mysql_query($mi_consulta) ) echo Insertado con éxito!";
else echo "
Error al insertar la consulta".mysql_error(); 
Y en realidad, no estás "guardando" a ninguna variable.

O bien
Código PHP:
mysql_query($mi_consulta) or die("Error al insertar, rompo la página!"); 
¿Ves? :)
__________________
>> Eleazan's Source
>> @Eleazan
  #18 (permalink)  
Antiguo 19/12/2011, 09:19
 
Fecha de Ingreso: julio-2010
Mensajes: 393
Antigüedad: 13 años, 9 meses
Puntos: 67
Respuesta: Problema con todo PHP

NO es un error de PHP, sigue estudiando!!! animo!
__________________
Páginas web de alta calidad y hechas a la medida.
  #19 (permalink)  
Antiguo 19/12/2011, 12:41
dankko
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Problema con todo PHP

No será en alguno de estos dos?

En $bd tengo que poner el nombre de la base de datos o el nombre de la tabla?

Código PHP:
<?php

$host 
"localhost";
$user "root";
$pw "root";
$bd "bbddj";

?>
O aquí donde pone basejuagdores, es el nombre de la tabla, es correcto eso o tengo que poner el nombre de la BD en ambas o el nombre de la tabla?

Código PHP:
  mysql_query("INSERT INTO basejugadores (NOMBRE,POSICION,MEDIA,EORIGINAL,ENUEVO)
       VALUES ("
.$_POST['Nombre'].",".$_POST['Posicion'].",".$_POST['Media'].",".$_POST['Eoriginal'].",".$_POST['Enuevo']."",$conexion);
        echo 
'datos insertados correctamente'
  #20 (permalink)  
Antiguo 19/12/2011, 12:50
Avatar de CesarHC  
Fecha de Ingreso: junio-2011
Ubicación: localhost
Mensajes: 566
Antigüedad: 12 años, 11 meses
Puntos: 56
Respuesta: Problema con todo PHP

en $db debe ir el nombre de la base de datos, en las consultas van las llamadas a las tablas de la bd.
__________________
Solo la práctica no te traicionara ¡¡¡¡¡¡

Seguir el camino tu debes PHP The Right Way.
  #21 (permalink)  
Antiguo 19/12/2011, 13:07
dankko
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Problema con todo PHP

Pues me sigue saliendo lo de "problema al insertar los datos "
Ya hasta eh hecho una tabla nueva viendo que coincidan todos loa valores y nada...
  #22 (permalink)  
Antiguo 19/12/2011, 13:19
Avatar de SetheR  
Fecha de Ingreso: enero-2009
Mensajes: 265
Antigüedad: 15 años, 3 meses
Puntos: 44
Respuesta: Problema con todo PHP

Ya te han respondido a eso. Alguno de los valores de primer IF (el que verifica los parametros POST), no está seteado.

Revisa atentamente que los valores del formulario y los recogidos sean los mismos.

Saludos

PD:
Código HTML:
Ver original
  1. <input type="text" name"Posicion" />
  #23 (permalink)  
Antiguo 19/12/2011, 13:43
dankko
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Problema con todo PHP

Ya he comprobado que son correctos, o eso me parece...
En la tabla basejugadores puse 6 campos, los del formulario y otro de ellos que es el ID, pero creo que no tengo que indicar el ID, no?

Etiquetas: todo
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 07:55.