Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Select de 3 tablas

Estas en el tema de Select de 3 tablas en el foro de Mysql en Foros del Web. Aupa a todos: Tengo que crear un sistema que envía un email según algunos criterios. Tengo hecho un select para recopilar las direcciones de emails ...
  #1 (permalink)  
Antiguo 01/07/2006, 10:27
Avatar de ABAROA  
Fecha de Ingreso: junio-2002
Ubicación: Euskal Herria
Mensajes: 141
Antigüedad: 21 años, 10 meses
Puntos: 0
Select de 3 tablas

Aupa a todos:

Tengo que crear un sistema que envía un email según algunos criterios. Tengo hecho un select para recopilar las direcciones de emails de la base de datos:


"SELECT eposta FROM (pre_erabiltz INNER JOIN pre_ikastaromotakid ON pre_erabiltz.iderabiltz=pre_ikastaromotakid.iderab iltz) INNER JOIN pre_ikastaromotak ON pre_ikastaromotak.idikastaromotak=pre_ikastaromota kid.idikastaromotak WHERE pre_ikastaromotakid.idikastaromotak='$ListBox1'";

Tengo 3 bases de datos, con sus campos:

pre_erabiltz
iderabiltz
eposta

pre_ikastaromotak
idikastaromotak
motak

pre_ikastaromotakid
idikastaromotak
iderabiltz


No sé dónde está el error, ya que me dice como resultado que no hay ningún usuario con esos parámetros aunque sí que los hay.

¿La sintaxis que utilizo está bien?

Gracias
__________________
Cobrar por ver publicidad :arriba:
  #2 (permalink)  
Antiguo 01/07/2006, 23:56
 
Fecha de Ingreso: junio-2006
Mensajes: 8
Antigüedad: 17 años, 10 meses
Puntos: 0
primero como se llama la tabla eposta?
pork dices: Tengo 3 bases de datos, con sus campos a lo k deveria de ser solo una base de datos.
creo k son los datos de los campos en fin...
pork no posteas los detalles:
como se llama la tabla y cuales son sus campos. y el formulario de busqueda.
solo asi te podremos ayudar.
  #3 (permalink)  
Antiguo 02/07/2006, 01:13
Avatar de ABAROA  
Fecha de Ingreso: junio-2002
Ubicación: Euskal Herria
Mensajes: 141
Antigüedad: 21 años, 10 meses
Puntos: 0
Si, tienes razón, donde he puesto que tengo tres bases de datos quería decir, que tengo tres tablas, que son las que están subrayadas, y el resto son sus campos respectivos:

pre_erabiltz
iderabiltz
eposta

pre_ikastaromotak
idikastaromotak
motak

pre_ikastaromotakid
idikastaromotak
iderabiltz

Y el formulario es:

Código PHP:
global $DBInternet;
global 
$pre_ikastaro;
 
$konexioa=mysql_connect('localhost','usuario','password') or die('Ezin izan da Datu Basearekin konektatu!'); 
   
mysql_select_db('Basededatos',$konexioa); 
$db = new clsDBInternet(); 

$SQL "SELECT eposta FROM (pre_erabiltz INNER JOIN pre_ikastaromotakid ON pre_erabiltz.iderabiltz=pre_ikastaromotakid.iderabiltz) INNER JOIN pre_ikastaromotak ON pre_ikastaromotak.idikastaromotak=pre_ikastaromotakid.idikastaromotak WHERE pre_ikastaromotakid.idikastaromotak='$ListBox1'";

 
$Tabla mysql_query($SQL$konexioa) or die(mysql_error()); 
 
   
//elaboramos cadena de emails 
  
$losemails=""
  while (
$row_Tabla=mysql_fetch_assoc($Tabla)) { 
   
$losemails.=($row_Tabla['eposta'].", "); 
   } 

  
$largo=strlen($losemails); 
   if (
$largo>2

   
//quitamos ultimos ", " 
   
$losemails=substr($losemails,0,$largo-2); 

else 

   echo 
"Ez dago erabiltzailerik!"
   die(); 
}; 
//$db -> query($SQL);
//$to_email = mysql_query($SQL,$konexioa)or die(mysql_error());

$from_name =  CCDLookUp("izenabizen""pre_erabiltz""iderabiltz=".
            
$DBInternet->ToSQL($pre_ikastaro->iderabiltz->GetValue(), ccsInteger), $DBInternet);
$from_email CCDLookUp("eposta""pre_erabiltz""iderabiltz="
           
$DBInternet->ToSQL($pre_ikastaro->iderabiltz->GetValue(), ccsInteger), $DBInternet);
$headers  "From: ".$from_name."<".$from_email.">";
$headers .= "\nContent-Type: text/html";
$subject  "Prestakuntza.net: "$pre_ikastaro->ikastaroa->GetText();
$message  "Ikastaro berria:<br><br>".
            
"Aupa  ".CCDLookUp("ikastaroa""pre_ikastaro,pre_erabiltz""idikastaro=".
            
$DBInternet->ToSQL($pre_ikastaro->idikastaro->GetValue(), ccsInteger), $DBInternet).":<br><br>".
            
$pre_ikastaro->data->GetText().
            
$pre_ikastaro->data2->GetText().
            
$pre_ikastaro->ikastaroa->GetText().
$pre_ikastaro->oharrak->GetText();

 
//while ($db->next_record()) { 
//mail ($to_email,$subject,$message,$headers); 
mail(null$subject$message"MIME-Version: 1.0 
Content-type: text/html; charset=iso-8859-1 
From: $from_name <$from_email> 
Bcc: $losemails" 
"\r\n") or die("Emaila bidaltzerakoan akats bat egon da");
echo; 
// 

   
mysql_free_result($Tabla); 
   
mysql_close($konexioa); 
La función de enviar el email me funciona, pero no me seleciona bien los emails que me interesan, por eso supongo que es el select el que tiene algún error. Está bien la sintaxis del Select?

Gracias
__________________
Cobrar por ver publicidad :arriba:
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 19:23.