Página 1 de 2

Problemas con codigo

Publicado: 19 Ago 2011, 17:18
por fernando16568
Hola al ponerlo en localhost me dice:
Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\plantilla\usuarios\acceso.php on line 11

Código: Seleccionar todo

$estado = isset($_GET['estado'])? $_GET['estado'] : 1;
$sql="SELECT * FROM avisos A, estado_aviso E_A
WHERE E_A.id_estado=A.id_estado
AND E_A.id_estado = '.$estado.'
AND A.nombre=".$_SESSION['MM_Username'] ;
 
$res=mysq_query($sql);
  if(mysql_num_rows($res)){  //aqui estaria el problema en principio..........
    while($row=mysql_fetch_object($res)){
    echo $row->texto.'<br />'; //muestro el texto del mensaje 

}

} 
alguien sabe como puedo solucionarlo????

Re: Problemas con codigo

Publicado: 19 Ago 2011, 17:31
por zyxer
Te recomiendo leer las normas.

No se le da soporte a local host

Re: Problemas con codigo

Publicado: 19 Ago 2011, 18:46
por Alorse
mysql_num_rows($res) lo mas probable es que sea un array() y no puedes meterlo en un ciclo if(), primero debes recorrerlo.

Re: Problemas con codigo

Publicado: 19 Ago 2011, 20:21
por RogerBCA

Código: Seleccionar todo

$sql="SELECT * FROM avisos A, estado_aviso E_A
WHERE E_A.id_estado=A.id_estado
AND E_A.id_estado = '$estado'
AND A.nombre=".$_SESSION['MM_Username'] ;
Creo que tu consulta tiene que ser asi dime que te sale ahora???

Re: Problemas con codigo

Publicado: 24 Ago 2011, 12:16
por fernando16568
RogerBCA escribió:

Código: Seleccionar todo

$sql="SELECT * FROM avisos A, estado_aviso E_A
WHERE E_A.id_estado=A.id_estado
AND E_A.id_estado = '$estado'
AND A.nombre=".$_SESSION['MM_Username'] ;
Creo que tu consulta tiene que ser asi dime que te sale ahora???
Asi no me da error pero tampoco me funciona todo te comento


Tengo una base de datos llamada "usuarios" y dentro estas tablas :

aviso_id
texto
nombre
nombre_user
id_estado int(1)

Segunda tabla:

id_estado` int(11) NOT NULL AUTO_INCREMENT,
estado_name` varchar(255) DEFAULT NULL,

Y LUEGO INSERTAS LOS DATOS, NO CAMPOS:
LOS INSERTAS EN PHPMYADMIN/INSERT
id_estado, estado_name
--------------------------------
1, enviados
2, recibidos
3, favoritos
4, eliminados

Luego tengo una pagina llamada acceso.php donde recibo los avisos y debajo de este espacio puse tus link

<a href="enviados.php?estado=1">enviados</a>
<a href="recibidos.php?estado=2">recibidos</a>
<a href="favoritos.php?estado=3">favoritos</a>
<a href="eliminados.php?estado=4">eliminados</a>
2 Esto iria en la pagina acceso.php?
<?php
$estado = isset($_GET['estado'])? $_GET['estado'] : 1;
$sql="SELECT * FROM avisos A, estado_aviso E_A
WHERE E_A.id_estado=A.id_estado
AND E_A.id_estado = '.$estado.'
AND A.nombre=".$_SESSION['MM_Username'] ;
$res=mysql_query($sql);
if(mysql_num_rows($res)){
while($row=mysql_fetch_object($res)){
echo $row->texto.'<br />'; //muestro el texto del mensaje
}
}
//initialize the session
if (!isset($_SESSION)) {
session_start();
}
?>


Esto es lo que tengo hasta ahora y no me funciona si me pueden aconsejar te lo agradeceria.

Re: Problemas con codigo

Publicado: 27 Ago 2011, 17:37
por RogerBCA
Entonces consulta de esta manera:

Código: Seleccionar todo

$sql='SELECT * FROM avisos A, estado_aviso E_A
WHERE E_A.id_estado=A.id_estado
AND E_A.id_estado = '.$estado.'
AND A.nombre="'.$_SESSION['MM_Username'].'";' ;
Y pon el mensaje que sale para saber si funciona.
Sube lo a un dominio para poder ver.

Saludos

Re: Problemas con codigo

Publicado: 28 Ago 2011, 11:01
por fernando16568
Explicacion de lo que quiero hacer:
Hola y Gracias a quien me pueda echar una mano.

Hola hice un curso por internet de Control de Acceso de Usuarios con Dreamweaver.
y lo finalice, en el esta una " Parte " de mandar avisos ( Mensajes) donde el usuario manda un aviso en forma de formulario.
(Pagina llamada admin_editarperfil.php) a otro Usuario,
y el otro lo recibe en su panel de control pagina llamada acceso.php.

Todo esto esta bien y funciona, Pero yo quise "incorporar" un poco más, como tener Enviados,Recibidos,Favoritos y Eliminados.
y esta parte es la que necesito acoplar a la que tenia de avisos.

Mi primera bade de datos era asi:

aviso_id
texto
nombre
nombre_user
Luego he incormorado esto id_estado

la segunda tabla no Existia la pongo debajo como va.

tambien es en curso realice otra pagina admin_editarperfil donde mando el formulario:

Tengo un juego de registro avisos y creo un formulario asi:

aviso_id quitado del formulario
texto
nombre campo oculto con el parametro MM_usename de la variable de sesion
nombre_user campo oculto con el parametro nombre_user

y despues en la pagina acceso.php recibo estos datos hice una tabla y dentro Puse:

aviso_nombre el cual me dice quien lo manda.
aviso_texto es el texto que mandan

Esto sale del Juego de registros avisos de la pagina acceso.php.

Esta aqui todo va bien y funciona pero necesito que funcione la segunda parte que deberia quedar asi:




Tengo una base de datos llamada "usuarios" y dentro estas varias tablas :

aviso_id
texto
nombre
nombre_user
id_estado int(1)

Segunda tabla:

id_estado` int(11) NOT NULL AUTO_INCREMENT,
estado_name` varchar(255) DEFAULT NULL,

Y LUEGO INSERTAS LOS DATOS, NO CAMPOS:
LOS INSERTAS EN PHPMYADMIN/INSERT
id_estado, estado_name
--------------------------------
1, enviados
2, recibidos
3, favoritos
4, eliminados

Luego tengo una pagina llamada acceso.php donde recibo los avisos ( mensajes) y debajo de este espacio puse estos link (aunque no se muy bien para que).
Aqui deberian salirme los enviados y demas pero no sale.

<a href="acceso.php?estado=1">enviados</a>
<a href="acceso.php?estado=2">recibidos</a>
<a href="acceso.php?estado=3">favoritos</a>
<a href="acceso.php?estado=4">eliminados</a>

2 Este codigo iria en la pagina acceso.php?

<?php

session_start();
$estado = isset($_GET['estado']) ? $_GET['estado'] : 1;

$sql = "SELECT * FROM avisos A, estado_aviso E_A WHERE E_A.id_estado=A.id_estado AND E_A.id_estado = $estado AND A.nombre='" .

$_SESSION['MM_Username'] . "'";

$res = mysql_query($sql) or die(mysql_error());

if (mysql_num_rows($res)) {

while ($row = mysql_fetch_object($res)) {

echo $row->texto . '<br />';

}

}

?>


Este codigo esta bien ( Es verdad que me abre la pagina sin errores).

En la pagina acceso.php tengo dos juegos de registro:

Juego de registro aviso, Todos,Filtro nombre_user de la variable de sesion MM_Username

Juego de Registro estado_aviso,Todos,Filtro id_estado Parametro URL id_estado

En la pagina admin_editarperfil.php que es desde donde envio el formulario tengo dos juegos de registro:

Juego de registro aviso Filtro aviso_id parametro de la URL aviso_id
Juego de registro estado_aviso Filtro id_estado parametro de la Url id_estado



Formulario echo en cs5 DW asi:

aviso_id quitado del formulario
texto
nombre campo oculto con el parametro MM_usename de la variable de sesion
nombre_user campo oculto con el parametro nombre_user
¿¿¿ id_estado campo oculto sin ningun parametro ( Creo que aqui no este bien )???


Preguntas:

1. Hay algun error en los juegos de registro en teoria tienen que enlazarse.(Pasar parametros)????
2. En este ultimo formulario para que funcione lo de enviados que tipo de parametro tengo que darle a id_estado??????
3. En la pagina acceso.php donde recibo los datos tengo que poner algo mas para que me salgan los enviados y demas????

Gracias y espero contestacion.

Re: Problemas con codigo

Publicado: 31 Ago 2011, 02:16
por RogerBCA
Un poco de google no hace daño no??
Off Topic

Bueno lee este tuto que publique en mi pagina: http://foro.soptecvar.com/tutoriales-we ... -t110.html
Trata de buscar sobre el session_start();
http://php.net/manual/es/function.session-start.php

Re: Problemas con codigo

Publicado: 31 Ago 2011, 02:33
por memoadian

les recuerdo que este usuario no ha colocado sus datos de soporte

no digo que se le niegue por que si, pero a otros usuarios no se les da soporte por lo mismo, se debe ser justo y equitativo con todos los usuarios del foro

Re: Problemas con codigo

Publicado: 31 Ago 2011, 02:50
por Alorse
memoadian escribió:

les recuerdo que este usuario no ha colocado sus datos de soporte

no digo que se le niegue por que si, pero a otros usuarios no se les da soporte por lo mismo, se debe ser justo y equitativo con todos los usuarios del foro
Esto no es soporte de phpBB, puede que el usuario ni siquiera tenga un foro, entonces no aplica.

Re: Problemas con codigo

Publicado: 31 Ago 2011, 03:56
por memoadian
Alorse escribió: Esto no es soporte de phpBB, puede que el usuario ni siquiera tenga un foro, entonces no aplica.
Y también puede que si lo tenga, como sea en todo caso tampoco es un recurso webmaster ¿o si? :wink:

Re: Problemas con codigo

Publicado: 31 Ago 2011, 03:59
por Alorse
Pues encaja mas aquí que en soporte de phpBB, además la duda no tiene nada que ver con código de un foro phpBB,

Re: Problemas con codigo

Publicado: 31 Ago 2011, 04:08
por memoadian
Pues si encaja, pero el foro en si se creo para compartir scripts y ayuda webmaster no para pedir ayuda con códigos, se desvirtua el tema del foro, como cuando uno comenta en un post :wink: se pierde el sentido, hay que tener las ideas claras, y además ver si es necesario crear un foro para ayuda en general, no destinada a phpbb.

Re: Problemas con codigo

Publicado: 31 Ago 2011, 12:16
por fernando16568
Hola y gracias a todos:

Ya tengo echo un control de usuarios el cual lo crea nuevo_usuario.php
entra y tiene un panel de control donde le sale sus mensajes (Avisos).
Noticias puede editar su perfil todo esta echo con esta tabla
aviso_id
texto
nombre
nombre_user

Y lo recogo en acceso.php me sale el texto del aviso, el nombre de quien me lo manda,
eso esta hecho y funciona,

Mi problema es cuando quiero ampliar y tener no solo que pueda enviar un mensaje(aviso) si no
que cuando lo envie se me quede en enviados por eso añadi en la base de datos avisos este campo "id_estado" y cree la otra tabla:

Segunda tabla:

id_estado` int(11) NOT NULL AUTO_INCREMENT,
estado_name` varchar(255) DEFAULT NULL,

Y LUEGO INSERTAS LOS DATOS, NO CAMPOS:
LOS INSERTAS EN PHPMYADMIN/INSERT
id_estado, estado_name
--------------------------------
1, enviados
2, recibidos
3, favoritos
4, eliminados

El tema seria como paso el dato Parametro id_estado de la tabla avisos para que en acceso que es donde recibo.
pueda ver enviados recibidos y demas.
Despues la segunda tabla ¿ no tiene formulario esto lo hace el codigo????

Código: Seleccionar todo

<?php
 
session_start();
 $estado = isset($_GET['estado']) ? $_GET['estado'] : 1;
 
$sql = "SELECT * FROM avisos A, estado_aviso E_A WHERE E_A.id_estado=A.id_estado AND E_A.id_estado = $estado AND A.nombre='" .
 
$_SESSION['MM_Username'] . "'";
 
$res = mysql_query($sql) or die(mysql_error());
 
if (mysql_num_rows($res)) {
 
while ($row = mysql_fetch_object($res)) {
 
echo $row->texto . '<br />';
 }
 }
 ?>
No quiero que nadie me haga nada lo quiero hacer yo sino si voy por buen camino,
una pequeña explicacio de como iria no que nadie me lo haga.
Un saludo

Re: Problemas con codigo

Publicado: 31 Ago 2011, 17:17
por Alorse
Por favor usa las etiquetas

Código: Seleccionar todo

[code] [code]
cuando pon gas código en el foro así no se ve tan desordenada y no da pereza leer.