Foros del Web » Programando para Internet » PHP »

por que no se guarda en mysql?? ayuda por favor

Estas en el tema de por que no se guarda en mysql?? ayuda por favor en el foro de PHP en Foros del Web. Hola, tengo este script y no sabia en que foro ponerlo (si en php o mysql). tengo este script: Código PHP: <?php print  "<form action=\"?id=<?php echo $id; ?>&ver=guardar\" method=\"post\" name=\"form1\">\n" ; ...
  #1 (permalink)  
Antiguo 08/05/2005, 18:30
 
Fecha de Ingreso: febrero-2005
Ubicación: Tamaulipas - México
Mensajes: 328
Antigüedad: 19 años, 2 meses
Puntos: 0
Exclamación por que no se guarda en mysql?? ayuda por favor

Hola, tengo este script y no sabia en que foro ponerlo (si en php o mysql).

tengo este script:
Código PHP:
<?php
print "<form action=\"?id=<?php echo $id; ?>&ver=guardar\" method=\"post\" name=\"form1\">\n";
print 
" <br>\n";
print 
"<TEXTAREA NAME=\"mensaje\" ROWS=\"15\" COLS=\"50\" align=\"center\">Aqui escribe el comentario</TEXTAREA>\n";
print 
"<table border=\"1\">\n";
print 
"<input type=\"hidden\" value=\"".$_SESSION['nick']."\" name=\"comentarista\">\n";
print 
"<input type=\"hidden\" value=\"".$id."\" name=\"id_re\">\n";
print 
"</table>\n";
print 
"<br>\n";
print 
"<INPUT TYPE=\"SUBMIT\" name=\"sende\" value=\"Agregar Comentario >>\" align=\"absbottom\">\n";
print 
"&nbsp;<input type=\"reset\">\n";
?>
solo pongo esa parte del script por ke me da error al postear 15400 caracteres, y despues cuando recibo ese post en el otro script hago los str_replace y preg_replace, por ke tiene un script añadido de smiles y codigobb, y si le doy a :
Código PHP:
<?php
echo smiles($_POST['mensaje']);
?>
si me aparece cambiado, peroaun no lo subo a la base de datos, entonces pongo este otro pedazo de script que es con elque subo los datos:
Código PHP:
$ssql "INSERT INTO `comentarios` ( `id_imagen` , `texto` , `comentarista` )";
$ssql.= "VALUES (";
$ssql.= "'".$id_res."', '".$resultado."', '".$comentarista_."'\n";
$ssql.= ");";

if(
mysql_query($ssql)){

echo 
"<script languaje=\"JavaScript\">";
echo 
"alert('Comentario Agregado Correctamente');";
echo 
"window.location.href=\"panel.php\";";
echo 
"</script>";
  }else{
echo 
"<script languaje=\"JavaScript\">";
echo 
"alert('Error al Agregar Comentario');";
echo 
"window.location.href=\"./add_coment.php?id=".$id_res."\";";
echo 
"</script>";
  } 
pero todo se sube menos el mensaje, alguien saber como solucionar ese problema??


Salu2.
__________________
Facebook Like
  #2 (permalink)  
Antiguo 08/05/2005, 19:20
Avatar de Bio
Bio
 
Fecha de Ingreso: diciembre-2003
Ubicación: México DF
Mensajes: 180
Antigüedad: 20 años, 4 meses
Puntos: 0
$mensaje se le asigna a $resultado en algún punto?
Si es así, prueba hacer varios echos de tus variables antes de que insertes en la BDD, así podrás ver si están llegando los valores correctamente por que sin el script completo es dificil saber donde está el problema.
  #3 (permalink)  
Antiguo 08/05/2005, 23:04
 
Fecha de Ingreso: enero-2004
Ubicación: Salto
Mensajes: 484
Antigüedad: 20 años, 3 meses
Puntos: 2
Cita:
Código PHP:
<?php
print "<form action=\"?id=<?php echo $id; ?>&ver=guardar\" method=\"post\" name=\"form1\">\n";
Como q no tiene q estar el <?php echo $id ?>, porq ya has abierto las etiquetas q indican comienzo y fin de un código PHP, deberías de ponerlo así
Código PHP:
print "<form action=\"?id=$id;&ver=guardar\" method=\"post\" name=\"form1\">\n"
No seas vago y ponle al action del form el nombre del archivo (por ej proceso.php?id=...)
Con el script q subes los datos, deberías de poner el query así:
Código PHP:
$ssql "INSERT INTO comentarios (id_imagen,texto,comentarista) VALUES('$id_res', '$resultado','$comentarista') or die(mysql_error())"
Además es demasiado complejo como se enreda todo. Deberías de aclararlo un poco, sobre todo ya q estamos usando las etiquetas de apertura y cierre.
Código PHP:
<?
if(empty($id) && empty($ver)){
?>
<mostramos el formulario con codigo HTML hasta el id q necesitamos PHP action=miarchivo.php?id=<?=$id;?>&ver=guardar, etc.>
<?
}else{
procesamos todo el formulario y le agradecemos su participación.
}
?>
Saludos cuidate
__________________
Dios dira que esto no es justo, pero lo sera...
  #4 (permalink)  
Antiguo 09/05/2005, 10:59
 
Fecha de Ingreso: febrero-2005
Ubicación: Tamaulipas - México
Mensajes: 328
Antigüedad: 19 años, 2 meses
Puntos: 0
Cita:
No seas vago y ponle al action del form el nombre del archivo (por ej proceso.php?id=...)
Con el script q subes los datos, deberías de poner el query así:
lo que pasa es que se ejecua en la msima pagina por eso solo pongo las variables que paso por url xDD

Salu2.

PD: ya he puesto echos aver si llega todo y si, si llega el problema es al guardar debe ser error de los str_replace y preg_replace por que si no usoi codigo bb ni caritas si me guarda el mensaje. U_U .
__________________
Facebook Like
  #5 (permalink)  
Antiguo 09/05/2005, 16:51
 
Fecha de Ingreso: febrero-2005
Ubicación: Tamaulipas - México
Mensajes: 328
Antigüedad: 19 años, 2 meses
Puntos: 0
si quieren ver el codigo y le entiendan mejor vean esta pagina: http://www.zerker.net/ver.php y le dan click a ver codigo.

Salu2.
__________________
Facebook Like
  #6 (permalink)  
Antiguo 09/05/2005, 23:57
 
Fecha de Ingreso: enero-2004
Ubicación: Salto
Mensajes: 484
Antigüedad: 20 años, 3 meses
Puntos: 2
Brother guau q manera de escribir... prueba con esto, es lo q yo uso (no lo escribi, pero tampoco me acuerdo del autor, hace mucho ya... me estoy volviendo viejo)
Código PHP:
<?
function formatear_salida($salida)
{
    return 
htmlspecialchars(stripslashes($salida));
}
function 
salida($a)
{
    
//$a=color_source($a);
    
$cadena_fuente = array(
    
'[A]',
    
'[/A]',
    
'[B]',
    
'[/B]',
    
'[I]',
    
'[/I]',
    
'[U]',
    
'[/U]',
    
'[C]',
    
'[/C]',
    
'[RED]',
    
'[/RED]',
    
'[BLUE]',
    
'[/BLUE]',
    
'[GREEN]',
    
'[/GREEN]'
    
);
    
$cadena_salida = array(
    
'<span style="text-transform:uppercase;">',
    
'</span>;',
    
'<strong>',
    
'</strong>',
    
'<em>',
    
'</em>',
    
'<u>',
    
'</u>',
    
'<span align="center">',
    
'</span>',
    
'<span style="color:red;">',
    
'</span>',
    
'<span style="color:blue;">',
    
'</span>',
    
'<span style="color:green;">',
    
'</span>'
    
);
    
$a=htmlspecialchars($a);
    
$a=strip_tags($a);
    
$a=nl2br($a);
    
$a=buscar_y_reemplazar($cadena_fuente,$cadena_salida,$a);
    
//$a=utf8_decode($a);
    
return $a;
}
function 
buscar_y_reemplazar($find,$replace,$string)
{
    if(!
is_array($find)) $find = array($find);
    if(!
is_array($replace))
    {
        if(!
is_array($find)) $replace = array($replace);
        else
        {
            
// this will duplicate the string into an array the size of $find
            
$c count($find);
            
$rString $replace;
            unset(
$replace);
            for (
$i 0$i $c$i++)
            {
                
$replace[$i] = $rString;
            }
        }
    }
    foreach(
$find as $fKey => $fItem)
    {
        
$between explode(strtolower($fItem),strtolower($string));
        
$pos 0;
        foreach(
$between as $bKey => $bItem)
        {
            
$between[$bKey] = substr($string,$pos,strlen($bItem));
            
$pos += strlen($bItem) + strlen($fItem);
        }
        
$string implode($replace[$fKey],$between);
    }
    return(
$string);
}
?>
Nada complicado, lo incluyes a las páginas q lo van a usar, le agregas lo q quieras (todos esos emoticones q estas usando), etc.
Funciona OK, no me da drama...
Saludos cuidate
__________________
Dios dira que esto no es justo, pero lo sera...
  #7 (permalink)  
Antiguo 10/05/2005, 09:54
 
Fecha de Ingreso: febrero-2005
Ubicación: Tamaulipas - México
Mensajes: 328
Antigüedad: 19 años, 2 meses
Puntos: 0
yaencontre el error ponia
Código PHP:
$result str_replace(":]","<img src='".$carpeta_smiles."/gifsonrisa.gif'>","$result"); 
y como era un query la comilla simple (') movia todo entonces puse esto:
Código PHP:
$result str_replace(":]","<img src=\"".$carpeta_smiles."/gifsonrisa.gif\">","$result"); 
Salu2.
__________________
Facebook Like
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 06:08.