Foros del Web » Programando para Internet » PHP »

pregunta sobre strings

Estas en el tema de pregunta sobre strings en el foro de PHP en Foros del Web. hola soy nuevo en esto de php y estoy haciendo un pequeño sistemita resulta que pongo datos para probar en la base de datos si ...
  #1 (permalink)  
Antiguo 04/08/2007, 23:21
(Desactivado)
 
Fecha de Ingreso: agosto-2007
Mensajes: 32
Antigüedad: 16 años, 8 meses
Puntos: 0
pregunta sobre strings

hola soy nuevo en esto de php y estoy haciendo un pequeño sistemita resulta que pongo datos para probar en la base de datos si son numeros los elimina y los muestra con la consulta select pero si es un string no lo elimina ni muestra las consultas es mas cuando hago consultas con select me da un error si la respueta tiene que ser un string ¿ por que pasa eso? mejor aqui va el codigo

Código PHP:
<?php

include("c:/servidor/web/pruebaconexion.php");



    if(empty(
$rut_prov) and empty($nombre_prov))
    {
    echo 
"<script>
         alert (\"no a ingresado datos\");
         </script>"
;
   echo 
"<a href=\"eliminardatosproveedoresexternos.php\">Volver </a> ";
   die;    
    }
        
//*****************************************************************************************************************
    
elseif (!empty($rut_prov) and !empty($nombre_prov)) 
        {
            echo  
"<script>
           alert (\"debe escribir solo el rut o solo el nombre no los dos juntos\");
           </script>"
;
            echo 
"<a href=\"eliminardatosproveedoresexternos.php\">Volver </a> ";
        }
//************************************************************************************************************
        
    
elseif (!empty($rut_prov) and empty($nombre_prov)) 
        {

        
$sql_q="select * from registro_proveedores_externos where rut_p_e=$rut_prov";
        
$legalisa mysql_query($sql_q);


while(
$row mysql_fetch_array($legalisa))
{

    echo 
"$row[0]";
}

            
$sql_query "delete from registro_proveedores_externos where rut_p_e=$rut_prov"
or die ("no funko"); 





 
mysql_query($sql_query);

$resultadomysql_affected_rows();
 
if (
$resultado 0) {
    
    echo 
"<script>
    alert (\"los datos del rut: $rut_prov se eliminaron correctamente\");
    
  </script>"
;
     echo 
"<a href=\"eliminardatosproveedoresexternos.php\">Volver atras </a> ";


    }
else
{

    echo  
"<script>
           alert (\"no se pudo eliminar por que el rut: $rut_prov no existe\");
           </script>"
;
    echo 
"<a href=\"eliminardatosproveedoresexternos.php\">Volver </a> ";
}    
        
        
}    

//---------------------------------------------------------------------------------------------------------

elseif (!empty($nombre_prov)) 
    {
        
        
$sql_q="select * from registro_proveedores_externos where nombre_p_e=$nombre_prov";
        
$legalisa mysql_query($sql_q);

/*
while($row = mysql_fetch_array($legalisa))
{

    echo "$row[1]";
}
*/
$sql_query "delete from registro_proveedores_externos where nombre_p_e=$nombre_prov"
or die ("no funko"); 




$eemysql_query($sql_query);

$resultadomysql_affected_rows();
 
/*
while ($row = mysql_fetch_array($ee)){
    echo"<br>";
    echo "$row[1]";
    echo"<br>";
}
*/
 
echo $resultado;
if (
$resultado 0) {
    
    echo 
"<script>
    alert (\"los datos del nombre: $nombre_prov se eliminaron correctamente\");
    
  </script>"
;
     echo 
"<a href=\"eliminardatosproveedoresexternos.php\">Volver atras </a> ";


    }
else
{

    echo  
"<script>
           alert (\"no se pudo eliminar por que el nombre: $nombre_prov no existe\");
           </script>"
;
    echo 
"<a href=\"eliminardatosproveedoresexternos.php\">Volver </a> ";
}    
        
    }    

mysql_close($descriptor);
?>

tambien pondre el html por si lo necesitan parapoder ayudarme

Código HTML:
<html>
<head>
<title>Eliminar Datos Proveedor Externo</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<form name="form1" method="post" action="eliminaprovex.php">
  <table width="70%" height="284" border="0" align="center">
    <tr bgcolor="#000066"> 
      <td height="95" colspan="2"> <div align="center"><font color="#FFFFFF" size="+2">Eliminar 
          Datos Proveedor Externo</font></div></td>
    </tr>
    <tr> 
      <td width="40%" height="22"> <div align="right"></div></td>
      <td width="60%">&nbsp;</td>
    </tr>
    <tr bgcolor="#DDF0F0"> 
      <td> <div align="right">Rut Proveedor</div></td>
      <td> <input name="rut_prov" type="text" id="rut_prov"></td>
    </tr>
    <tr bgcolor="#DDF0F0"> 
      <td> <div align="right">Nombre Proveedor</div></td>
      <td> <input name="nombre_prov" type="text" id="nombre_prov"></td>
    </tr>
    <tr> 
      <td height="24">&nbsp;</td>
      <td>&nbsp;</td>
    </tr>
    <tr> 
      <td height="21">&nbsp;</td>
      <td>&nbsp;</td>
    </tr>
    <tr> 

      <td>&nbsp;</td>
      <td><input name="eliminar" type="submit" id="eliminar" value="eliminar"> 
        <input name="cancelar" type="reset" id="cancelar" value="cancelar"></td>
    </tr>
  </table>
</form>
</body>
</html> 

espero que me puedan ayudar con esto es muy importante para mi a medida que yo aprenda tambien estoy dispuesto a ayudar incluso ahora con lo poco que se
  #2 (permalink)  
Antiguo 05/08/2007, 10:05
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Re: pregunta sobre strings

¿Qué parte específica del PHP te da el error?
¿Cuál es ese error?
¿De dónde sale $rut_prov?
¿Qué tipo de dato es?

Si no estás viendo los errores de PHP, poné al principio de tu archivo estas 2 líneas:

Código PHP:
error_reporting(E_ALL);
ini_set('display_errors'true); 

Saludos.
  #3 (permalink)  
Antiguo 05/08/2007, 10:36
(Desactivado)
 
Fecha de Ingreso: agosto-2007
Mensajes: 32
Antigüedad: 16 años, 8 meses
Puntos: 0
Re: pregunta sobre strings

el $rut_prov es el cuadro de texto de html que envia el formulario y la variable $rut_prov lo recibe
no me da ningun error lo que pasa es que si yo ingreso en ese campo de la base de datos un numero no tengo problemas por ejemplo ingrso 192 y no tengo ningun problema pero cuando ingrerso un dato como string por ejemplo '192-1'
no lo puedo eliminar por que salta a esta parte del codigo
Código PHP:
else
{

    echo  
"<script>
           alert (\"no se pudo eliminar por que el rut: $rut_prov no existe\");
           </script>"
;
    echo 
"<a href=\"eliminardatosproveedoresexternos.php\">Volver </a> ";

y no se ejecuta la consulta en la base de datos el campo esta definido como un varchar asi que no tengo problemas con eso


espero que alla quedado mas claro mi problema
  #4 (permalink)  
Antiguo 05/08/2007, 12:03
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Re: pregunta sobre strings

Tu query es incorrecto, si el campo es varchar necesitas pasarle el valor que quieres entre comillas, es decir asi:
Código:
select * from registro_proveedores_externos where rut_p_e='$rut_prov'
Saludos.
  #5 (permalink)  
Antiguo 05/08/2007, 21:46
(Desactivado)
 
Fecha de Ingreso: agosto-2007
Mensajes: 32
Antigüedad: 16 años, 8 meses
Puntos: 0
Re: pregunta sobre strings

ok gracias man la voy a provar ahora

si me funciono muy bien

por que es necesario poner '' para que funcionen los string ??


gracias de nuevo gatorv

Última edición por elllevador; 05/08/2007 a las 22:05 Razón: hacer una pregunta
  #6 (permalink)  
Antiguo 06/08/2007, 08:54
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Re: pregunta sobre strings

Porque el tipo de datos es un string, igual en todos los lenguajes, por decir haz esto en PHP y dime si no te tira un error:
Código PHP:
$unstring Este es mi String
Esto es lo correcto:
Código PHP:
$unstring "Este es mi String"
En todos los lenguajes de programacion necesitas definir las variables para que el compilador sepa que es lo que estas haciendo.

Saludos.
  #7 (permalink)  
Antiguo 06/08/2007, 09:20
(Desactivado)
 
Fecha de Ingreso: agosto-2007
Mensajes: 32
Antigüedad: 16 años, 8 meses
Puntos: 0
De acuerdo Re: pregunta sobre strings

ok gracias de nuevo
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 17:41.