Foros del Web » Programando para Internet » PHP »

UPDATE en un a Tabla

Estas en el tema de UPDATE en un a Tabla en el foro de PHP en Foros del Web. Hola amigos tengo esta tabla: Código PHP: --  Estructura de tabla para la tabla  ` comercio ` --  CREATE TABLE  ` comercio ` (   ` id_comercio `  int ( 50 )  NOT NULL auto_increment ...
  #1 (permalink)  
Antiguo 25/07/2009, 12:20
 
Fecha de Ingreso: enero-2009
Mensajes: 246
Antigüedad: 15 años, 3 meses
Puntos: 1
UPDATE en un a Tabla

Hola amigos tengo esta tabla:

Código PHP:
-- Estructura de tabla para la tabla `comercio`
-- 

CREATE TABLE `comercio` (
  `
id_comercioint(50NOT NULL auto_increment,
  `
razon_socialvarchar(100NOT NULL,
  `
responsablevarchar(100NOT NULL,
  `
direccionvarchar(100NOT NULL,
  `
cuitvarchar(100NOT NULL,
  `
telefonovarchar(100NOT NULL,
  `
celularvarchar(100NOT NULL,
  `
ciudadvarchar(100NOT NULL,
  `
mailvarchar(100NOT NULL,
  `
cod_postalvarchar(100NOT NULL,
  `
observacionesvarchar(100NOT NULL,
  `
usuariovarchar(100NOT NULL,
  `
passwordvarchar(100NOT NULL,
  `
accionint(9unsigned NOT NULL default '0',
  
PRIMARY KEY  (`id_comercio`)
ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=

y tengo este otro php que es el que identifica al usuario y lo redirecciona.

Código PHP:
<?php 
    
//Start session 
    
session_start(); 
     
    
//Include database connection details 
    
require_once('config.php'); 
     
    
//Array to store validation errors 
    
$errmsg_arr = array(); 
     
    
//Validation error flag 
    
$errflag false
     
    
//Connect to mysql server 
    /*$link = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD); 
    if(!$link) { 
        die('Failed to connect to server: ' . mysql_error()); 
    } 
     
    //Select database 
    $db = mysql_select_db(DB_DATABASE); 
    if(!$db) { 
        die("Unable to select database"); 
    } */ 
     
    //Function to sanitize values received from the form. Prevents SQL injection 
    
function clean($str) { 
        
$str = @trim($str); 
        if(
get_magic_quotes_gpc()) { 
            
$str stripslashes($str); 
        } 
        return 
mysql_real_escape_string($str); 
    } 
     
    
//Sanitize the POST values 
    
$login clean($_POST['login']); 
    
$password clean($_POST['password']); 
     
    
//Input Validations 
    
if($login == '') { 
        
$errmsg_arr[] = 'Login ID missing'
        
$errflag true
    } 
    if(
$password == '') { 
        
$errmsg_arr[] = 'Password missing'
        
$errflag true
    } 
     
    
//If there are input validations, redirect back to the login form 
    
if($errflag) { 
        
$_SESSION['ERRMSG_ARR'] = $errmsg_arr
        
session_write_close(); 
        
header("location: login-form.php"); 
        exit(); 
    } 
     
    
//Create query 
    //$qry="SELECT * FROM comercio WHERE usuario='$login' AND password='".md5($_POST['password'])."'"; 
    
$qry="SELECT * FROM comercio WHERE usuario='$login' AND password='$password'"
    
$result=mysql_query($qry); 
     
     
//Create query 
    //$qry="UPDATE comercio SET id_comercio='id_comercio' AND accion='$accion' + 1"; 
    
$qry="UPDATE comercio SET id_comercio = id_comercio +1 WHERE accion =1'"
    
$result=mysql_query($qry);


    
//Check whether the query was successful or not 
    
if($result) { 
        if(
mysql_num_rows($result) == 1) { 
            
//Login Successful 
            
session_regenerate_id(); 
            
$member mysql_fetch_assoc($result); 
            
$_SESSION['SESS_MEMBER_ID'] = $member['id_comercio']; 
            
$_SESSION['SESS_FIRST_NAME'] = $member['razon_social']; 
            
//$_SESSION['SESS_LAST_NAME'] = $member['lastname']; 
            
session_write_close(); 
            
header("location: member-index.php"); 
            exit(); 
        }else { 
            
//Login failed 
            
header("location: login-failed.php"); 
            exit(); 
        } 
    }else { 
        die(
"Query failed"); 
    } 
?>

El tema que quiero es poder cuando un comercio se loguea, me aumente la cantidad de login de 1 en 1 en el campo ACCION de la Tabla COMERCIO.

Tengo esta query pero no me esta funcionando:

Código PHP:
//Create query 
    //$qry="UPDATE comercio SET id_comercio='id_comercio' AND accion='$accion' + 1"; 
    
$qry="UPDATE comercio SET id_comercio = id_comercio +1 WHERE accion =1'"
    
$result=mysql_query($qry); 

Alguien podria explicarme en donde tengo el error que no me suma dependiendo el comercio que se loguea en el campo accion.

Saludos y gracias
  #2 (permalink)  
Antiguo 25/07/2009, 12:24
Avatar de Ronin46  
Fecha de Ingreso: junio-2009
Mensajes: 398
Antigüedad: 14 años, 9 meses
Puntos: 8
Respuesta: UPDATE en un a Tabla

Ahí estas incrementando el id del comercio, lo cual no es lo que quieres, debes de incrementar acción y el where sería el id del comercio

Resumiendo, que tu consulta es al revés de como la tienes.
  #3 (permalink)  
Antiguo 25/07/2009, 13:05
 
Fecha de Ingreso: enero-2009
Mensajes: 246
Antigüedad: 15 años, 3 meses
Puntos: 1
Respuesta: UPDATE en un a Tabla

Query failed

Eso es lo que me esta tirando al querer loguearme
  #4 (permalink)  
Antiguo 25/07/2009, 13:24
Avatar de Ronin46  
Fecha de Ingreso: junio-2009
Mensajes: 398
Antigüedad: 14 años, 9 meses
Puntos: 8
Respuesta: UPDATE en un a Tabla

¿Haciendo qué consulta?
  #5 (permalink)  
Antiguo 25/07/2009, 13:53
 
Fecha de Ingreso: enero-2009
Mensajes: 246
Antigüedad: 15 años, 3 meses
Puntos: 1
Respuesta: UPDATE en un a Tabla

eso es lo que me devuelve cuando me quiero loguear.
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:17.