Ver Mensaje Individual
  #1 (permalink)  
Antiguo 28/07/2011, 20:59
WinderJerter
 
Fecha de Ingreso: agosto-2009
Mensajes: 292
Antigüedad: 14 años, 8 meses
Puntos: 5
problemas con INNER JOIN

Hola que tal, les cuento mi problema:

Lo que pasa es que cuando subo una imagen se guarda los datos del usuario en una tabla llamada TMP_USERS y hasta que el usuario activa su cuenta se cambian los datos a la tabla USERS.

Cuando un usuario ya sea que allá activado su cuenta o no, cuando sube una imagen se le suma 1 al campo UPLOADS que esta en las tablas TMP_USERS y USERS.

Esto lo puedo lograr correctamente cuando uso una tabla ya sea TMP_USERS o USERS pero el problema esta por ejemplo si la imagen esta en USERS y yo lo compruebo con la tabla TMP_USERS hay va a estar el problema y lo quise solucionar con un INNER JOIN de esta manera:

Código PHP:
Ver original
  1. $demo = "SELECT CORREO FROM TMP_USERS TU INNER JOIN USERS U ON TU.CORREO = U.CORREO WHERE CORREO = '".mysql_real_escape_string($_POST['CORREO'])."'";
  2. $result_demo = mysql_query($demo);
  3.  
  4. if(mysql_num_rows($result_demo) == 0) {
  5.     $IUID_TMP = "";
  6.            
  7.     for($tmp = 0; $tmp <= 7; $tmp++) {
  8.         $random_tmp = array_rand($qwerty);
  9.         $demo_TMP .= $qwerty[$random_tmp];
  10.         $demo = "demo-". wordwrap($demo_TMP, 4, "-", TRUE);
  11.     }
  12.    
  13.     $USERS_TMP = "INSERT INTO TMP_USERS TU INNER JOIN USERS U ON TU.CORREO = U.CORREO VALUES('$demo', '1', '$date', '$CORREO')";
  14.     $result_USERS_TMP = mysql_query($USERS_TMP) or die (mysql_error());
  15. } else {
  16.     $UPDATE_IMG = "UPDATE TMP_USERS TU INNER JOIN USERS U ON TU.UPLOADS = U.UPLOADS SET UPLOADS = UPLOADS + 1 WHERE CORREO = '".mysql_real_escape_string($_POST['CORREO'])."'";
  17.     $result_UPDATE_IMG = mysql_query($UPDATE_IMG) or die (mysql_error());
  18. }

Y cuando trato de subir una imagen me sale este error:

Código:
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/user_demo/public_html/index.php on line 69
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 'TU INNER JOIN USERS U ON TU.CORREO = U.CORREO VALUES('DEMO-Dasg-yi98', '1', '2011/' at line 1
Alguien que me pueda ayudar con este problema

Saludos y gracias de antemano