Foros del Web » Programando para Internet » PHP »

¿Qué les parece este script?

Estas en el tema de ¿Qué les parece este script? en el foro de PHP en Foros del Web. Cita: Iniciado por Mauri1 Pero tengo un inconveniente, si se fijan en la lista, se agrega una primera opción que está vacía Este es el ...

  #31 (permalink)  
Antiguo 27/02/2006, 18:26
Avatar de jahepi
Colaborador
 
Fecha de Ingreso: diciembre-2004
Ubicación: Querétaro
Mensajes: 1.124
Antigüedad: 19 años, 3 meses
Puntos: 43
Cita:
Iniciado por Mauri1
Pero tengo un inconveniente, si se fijan en la lista, se agrega una primera opción que está vacía

Este es el código de la lista

Código PHP:
<select name="ver" id="ver" onFocus="noDetalle()">
                <?php
     $num_list
=$_pagi_desde-1;
     do { 
$num_list++; 
    
?>
                <option value="<?php echo $row['id']?>"<?php if (!(strcmp($row['id'], $row_RegistrosOperar['id']))) {echo "selected=\"selected\"";} ?>><?php echo $num_list." - ".$row['nombre']?></option>
                <?php
} while ($row mysql_fetch_array($_pagi_result));
  if(
$_pagi_totalReg 0) {
      
mysql_data_seek($_pagi_result0);
   
$row mysql_fetch_array($_pagi_result);
  }
?>
              </select>
¿Qué puede ser?

Muchas gracias
Hola Mauri!

Antes que nada felicitarte por tu script

Con respecto a lo que te pasa, es debido al tipo de bucle que estas usando, en el bucle do while, primero se ejecutan todas las instrucciones dentro del bloque DO y después pasa a evaluar la condicional en el while, es por eso que te pone la primera opción en blanco.

Un saludo!
  #32 (permalink)  
Antiguo 27/02/2006, 18:50
Avatar de Mauri1  
Fecha de Ingreso: noviembre-2002
Ubicación: Santiago de Chile
Mensajes: 558
Antigüedad: 21 años, 4 meses
Puntos: 0
Genial !!

jahepi muchas gracias por tu comentario y por tu ayuda, voy a corregir el inconveniente

Saludos
  #33 (permalink)  
Antiguo 27/02/2006, 23:58
 
Fecha de Ingreso: noviembre-2003
Ubicación: Puente de ixtla
Mensajes: 773
Antigüedad: 20 años, 4 meses
Puntos: 0
oye me interesa saber como hiciste esa barra me podrias dar un ejemplo de como hacer una?
__________________
°º¤ø,¸¸,ø¤º°`°º¤ø,¸S@M°º¤ø,¸¸,ø¤º°`°º¤ø,¸.
Dios solo nos dio el 0 y el 1 y con solo eso hemos construido un universo
  #34 (permalink)  
Antiguo 28/02/2006, 00:58
Avatar de xyyy7  
Fecha de Ingreso: enero-2004
Ubicación: Maracay.-
Mensajes: 637
Antigüedad: 20 años, 2 meses
Puntos: 5
Solo dos Sugerencia ..

1.- Si es de su agrado podría poner el formulario en la parte inferior de la pagina (debajo de la paginación) y no en la parte superior, ... creo que se vería mucho mejor, con eso evitarías que al colocarse un nuevo post los usuarios tuvieran que utilizar el Scroll para leer su mensaje, ya que estaría de primero en la paginación de resultados. 2.- podrías CONDICIONAL (IF();) el cuadro de texto que no lo tiene condicionado aun.- eso puede hacerlo que con una cantidad de caracteres mínimos requeridos o tan solo un caracter mínimo para que pueda ser procesado el post.-

Por lo demás .. te quedo muy bien.-

Saludos.-
__________________
Maracay Edo Aragua - Venezuela :
Mi Favorita :
http://www.MySQL.Com
  #35 (permalink)  
Antiguo 28/02/2006, 05:40
Avatar de Mauri1  
Fecha de Ingreso: noviembre-2002
Ubicación: Santiago de Chile
Mensajes: 558
Antigüedad: 21 años, 4 meses
Puntos: 0
Hola

xyyy7, pensaba ocultar toda esa zona de agregar, pero creo que es mejor lo que tu dices

Ixtleco, lo de la barra es el FCKeditor. Lee la documentación y verás que es bastante fácil integrarlo

Muchas gracias, saludos
  #36 (permalink)  
Antiguo 28/02/2006, 06:53
Avatar de Mauri1  
Fecha de Ingreso: noviembre-2002
Ubicación: Santiago de Chile
Mensajes: 558
Antigüedad: 21 años, 4 meses
Puntos: 0
Listo, solucioné el problema de la lista e hice algunos cambios, ¿quedó mejor ahora o como estaba antes?

Ahora - antes

Última edición por Mauri1; 03/03/2006 a las 12:05
  #37 (permalink)  
Antiguo 28/02/2006, 07:13
Avatar de carlosfocus  
Fecha de Ingreso: enero-2006
Ubicación: Venezuela
Mensajes: 823
Antigüedad: 18 años, 2 meses
Puntos: 0
Bien :D

MIra una cosita que siempre lo he hecho cuando monto un script de comentarios y como a veces no me da time de revisar todos los comentarios que llegan a X sitio personal..

Puedes colocar que te avise por mail cuando inserten un mensaje ;) y pedir ma datos

Es solo un comentario ;)
__________________
Carlos Herrera
Web Developer
www.carlos.com.ve
Para descargar archivos propios a su Teléfono Mobil? www.carlosfocus.com
  #38 (permalink)  
Antiguo 28/02/2006, 07:16
Avatar de Mauri1  
Fecha de Ingreso: noviembre-2002
Ubicación: Santiago de Chile
Mensajes: 558
Antigüedad: 21 años, 4 meses
Puntos: 0
Hola

que cuando el usuario agrege uno me mande un email y luego puedo activarlo o no, ¿eso?
  #39 (permalink)  
Antiguo 28/02/2006, 07:24
Avatar de carlosfocus  
Fecha de Ingreso: enero-2006
Ubicación: Venezuela
Mensajes: 823
Antigüedad: 18 años, 2 meses
Puntos: 0
Lo de activarlo tambien seria buena idea, por que si te escriben grocerias o colocan una imagen que no debe ir o simplemente escriben y repiten lo mismo para hacer tu scroll interminable jejejeje

hay preveer todos esos detallitos.
__________________
Carlos Herrera
Web Developer
www.carlos.com.ve
Para descargar archivos propios a su Teléfono Mobil? www.carlosfocus.com
  #40 (permalink)  
Antiguo 28/02/2006, 10:18
Avatar de Mauri1  
Fecha de Ingreso: noviembre-2002
Ubicación: Santiago de Chile
Mensajes: 558
Antigüedad: 21 años, 4 meses
Puntos: 0
Si

Ahora hay que encontrarle alguna aplicación a este script, integrarlo a alguna parte o hacer algo con el, para luego hacerle una página y que se pueda descargar

Se resiven todo tipo de sugerencias

Saludos
  #41 (permalink)  
Antiguo 05/03/2006, 00:13
 
Fecha de Ingreso: noviembre-2003
Ubicación: Puente de ixtla
Mensajes: 773
Antigüedad: 20 años, 4 meses
Puntos: 0
ok gracias
__________________
°º¤ø,¸¸,ø¤º°`°º¤ø,¸S@M°º¤ø,¸¸,ø¤º°`°º¤ø,¸.
Dios solo nos dio el 0 y el 1 y con solo eso hemos construido un universo
  #42 (permalink)  
Antiguo 08/03/2006, 09:19
okram
Invitado
 
Mensajes: n/a
Puntos:
buen script, felicitaciones

pero... probando tu script se me dio por poner esto:

<script>alert('funciona????');</script>

una inocente funcion de javascript, nada mas, y me lanzo esto:

Cita:
You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'funciona????');</script>', '08-03-2006', '15:18:43')' at
seria buenonque revises los filtros que usas, ya que tu script puede tener alguna falla que podrian malograr el html de tu pagina con un codigo malicioso colocado en el formulario

Salu2

AÑADIDO:
me parece que tu error esta en el filtro que usas, parece que no le asignaste un filtro para las comillas dobles y/o simples... revisa y corrige eso cuanto antes, ya que podrian causar todo un problema en tu aplicacion

Última edición por okram; 08/03/2006 a las 09:26
  #43 (permalink)  
Antiguo 08/03/2006, 14:22
Avatar de Mauri1  
Fecha de Ingreso: noviembre-2002
Ubicación: Santiago de Chile
Mensajes: 558
Antigüedad: 21 años, 4 meses
Puntos: 0
Gracias okram

¿Cómo puedo hacer ese tipo de filtros?

Muchas gracias
  #44 (permalink)  
Antiguo 08/03/2006, 15:38
Avatar de uamistad  
Fecha de Ingreso: diciembre-2004
Ubicación: Cd. de México
Mensajes: 1.395
Antigüedad: 19 años, 3 meses
Puntos: 1
Cita:
¿Cómo puedo hacer ese tipo de filtros?
Analiza la cadena (podrías usar ereg()) que el usuario está ingresando y si detectas:

* Está usando caracteres prohibidos (tú lo defines).
* No colocó nada en el formulario.
* Colocó menos caracteres de los permitidos.
* etc, etc, (las condiciones que tú quieras)

Manda a la pantalla mensajes de error personalizados, controla siempre tus errores y lo que el usuario puede ver.
__________________
"Di no al Internet Explorer" -Proverbio Chino-
  #45 (permalink)  
Antiguo 08/03/2006, 15:46
Avatar de Mauri1  
Fecha de Ingreso: noviembre-2002
Ubicación: Santiago de Chile
Mensajes: 558
Antigüedad: 21 años, 4 meses
Puntos: 0
OK, muchas gracias

Investigaré y trabajaré en ello

Saludos
  #46 (permalink)  
Antiguo 08/03/2006, 17:12
 
Fecha de Ingreso: junio-2005
Mensajes: 981
Antigüedad: 18 años, 9 meses
Puntos: 2
No deberías mandar un error al encontrar una comilla doble o simple, deberías cambiarlo por su entidad HTML para las comillas dobles es &quot; para las comillas simples no lo recuerdo, investiga sobre esto, ya que si yo ingreso cualquier tipo de comillas (aun que sea para resaltar alguna palabra) me daría error. Saludos y felicitaciones por tu aplicación.
  #47 (permalink)  
Antiguo 08/03/2006, 17:17
Avatar de david_M_G  
Fecha de Ingreso: febrero-2005
Mensajes: 938
Antigüedad: 19 años, 1 mes
Puntos: 20
Para la última aportación de DarioDario utiliza la función str_replace()
  #48 (permalink)  
Antiguo 08/03/2006, 17:37
Avatar de Mauri1  
Fecha de Ingreso: noviembre-2002
Ubicación: Santiago de Chile
Mensajes: 558
Antigüedad: 21 años, 4 meses
Puntos: 0
Hola

En el nombre estoy usando strip_tags

¿Para el mensaje qué sería mejor poner: htmlspecialchars, htmlentities o str_replace ?
  #49 (permalink)  
Antiguo 08/03/2006, 17:52
Avatar de Mauri1  
Fecha de Ingreso: noviembre-2002
Ubicación: Santiago de Chile
Mensajes: 558
Antigüedad: 21 años, 4 meses
Puntos: 0
Creo que sería mejor poner str_replace, tal como dijo david_M_G. Porque ingresé <script>alert('funciona????');</script> y con los otros dos el resultado fue &lt;script&gt;alert('funciona????');&lt;/script&gt;

Pero también lo ingresé así nomás y el resultado fue <script>alert('funciona????');</script>, nosé porque a okram le dio ese error
  #50 (permalink)  
Antiguo 08/03/2006, 18:08
okram
Invitado
 
Mensajes: n/a
Puntos:
Hola Mauri1

Me sigue dando error, coloqué Hola 'mundo' y me lanzo este error (el mismo):

You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'mundo' ', '09-03-2006', '00:01:25')' at line 1

Ademas, coloqué mundo','mi primer', 'script y me lanzo este otro error:

Column count doesn't match value count at row 1

lo mas seguro es que tienes algun error en la filtracion de tus datos, solo pasa con las comillas simples, no con las dobles, y se da en ambos campos (nombre y mensaje)

Seria bueno que postees el codigo con el que tratas al textarea de tu formulario una vez enviado, como lo procesas y almacenas en la BD, y como lo llamas para ser mostrado...




AÑADIDO:
Lo mas probable es que tu error sea al momento de añadir los datos a tu BD. Imaginemos que yo coloque en NOMBRE: Okram y en MENSAJE: Hola mundo, tu codigo seria algo asi como:

$query = "INSERT INTO tabla(nombre,mensaje,fecha,hora) VALUES('Okram','Hola mundo','00-00-00','00:00:00')";

Eso es en un caso normal, ahora si yo coloco: NOMBRE: Okram y en MENSAJE: Hola 'mundo':

$query = "INSERT INTO tabla(nombre,mensaje,fecha,hora) VALUES('Okram','Hola 'mundo'','00-00-00','00:00:00')";
Comoves, tu codigo queda totalmente distorcionado, dado que lo resaltado con azul es tomado como el valor asignado a la columna mensaje, y lo esperado ahi es una coma y no lo resaltado en verde, por eso te manda un error de sintaxis sql

Finalmente, si yo escribo NOMBRE: Okram y en MENSAJE: mundo','mi primer', 'script :

$query = "INSERT INTO tabla(nombre,mensaje,fecha,hora) VALUES('Okram','mundo','mi primer','script','00-00-00','00:00:00')";

La explicacion para el segundo error que te mostre (Column count doesn't match value count at row 1) es sencilla: Tu consulta es erronea ya que tu declaras 4 columnas en la que inseertaras datos, mientras que en VALUES insertas 6 cadenas, supuiestamente lo escrito en azul corresponde a la columna mensaje, pero como ves parecieran 3 tipos de datos diferentes...

Lo mas seugurp como te dije es que no estes filtrando las comillas simples... de todas maneras postea tu codigo (si es posible ) para poder aclarar cual es el verdadero problema

Salu2

Última edición por okram; 08/03/2006 a las 18:35
  #51 (permalink)  
Antiguo 08/03/2006, 19:46
Avatar de Mauri1  
Fecha de Ingreso: noviembre-2002
Ubicación: Santiago de Chile
Mensajes: 558
Antigüedad: 21 años, 4 meses
Puntos: 0
Hola okram

Muchas gracias por el trabajo que te diste al hacer esto. Mañana sin falta publico el código, ahora antes de acostarme me di una vuelta por aqui y vi tu mensaje.

Nos vemos

Saludos
  #52 (permalink)  
Antiguo 09/03/2006, 17:14
Avatar de Mauri1  
Fecha de Ingreso: noviembre-2002
Ubicación: Santiago de Chile
Mensajes: 558
Antigüedad: 21 años, 4 meses
Puntos: 0
Aquí el código

Código PHP:
//Agregar
if ((isset($_POST["insert"])) && ($_POST["insert"] == "nuevo")) {
$el_nombre strip_tags($_POST['campo_nombre_add']);
$el_mensaje $_POST['FCKeditor1'];
$la_fecha date('d-m-Y');
$la_hora date('H:i:s');
$insertSQL "INSERT INTO tabla (nombre, mensaje, fecha, hora) VALUES ('$el_nombre', '$el_mensaje', '$la_fecha', '$la_hora')";
mysql_query($insertSQL$conexion) or die(mysql_error());
header("Location: ".$_SERVER['PHP_SELF']);
}
 
//Área de texto
$oFCKeditor = new FCKeditor('FCKeditor1') ;
$oFCKeditor->BasePath 'FCKeditor/';
$oFCKeditor->ToolbarSet 'Personalizada' ;
$oFCKeditor->Height 300 ;
$oFCKeditor->Value '';
$oFCKeditor->Create() ; 
  #53 (permalink)  
Antiguo 10/03/2006, 01:41
 
Fecha de Ingreso: febrero-2004
Ubicación: España. Madrid
Mensajes: 454
Antigüedad: 20 años, 1 mes
Puntos: 0
sólo eso?
bueno supongo que el resto del curre será la configuracion del FCKeditor
  #54 (permalink)  
Antiguo 10/03/2006, 09:08
okram
Invitado
 
Mensajes: n/a
Puntos:
bien

primero, asi como aplicas strip_tags() a $_POST['campo_nombre_add'] seria bueno que tambien lo apliques a $_POST['FCKeditor1']...

ademas , para el asunto de las comillas usa htmlentities() [ http://www.php.net/htmlentities ]:


Tu codigo quedaria asi:

Código PHP:
//<?

//Agregar
if ((isset($_POST["insert"])) && ($_POST["insert"] == "nuevo")) {
$nombre strip_tags($_POST['campo_nombre_add']);
$mensaje strip_tags($_POST['FCKeditor1']);
$el_nombre htmlentities($nombreENT_QUOTES);
$el_mensaje htmlentities($mensajeENT_QUOTES);
$la_fecha date('d-m-Y');
$la_hora date('H:i:s');
$insertSQL "INSERT INTO tabla (nombre, mensaje, fecha, hora) VALUES ('$el_nombre', '$el_mensaje', '$la_fecha', '$la_hora')";
mysql_query($insertSQL$conexion) or die(mysql_error());
header("Location: ".$_SERVER['PHP_SELF']);
}
  #55 (permalink)  
Antiguo 10/03/2006, 14:26
Avatar de Mauri1  
Fecha de Ingreso: noviembre-2002
Ubicación: Santiago de Chile
Mensajes: 558
Antigüedad: 21 años, 4 meses
Puntos: 0
OK, muchas gracias

cyborg eso es sólo la parte para agregar nuevos mensajes, falta mucho más y lo correspondiente al FCKeditor es cuento a parte
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 08:51.