Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - tecasoft

#51
esto es lo que utilizo para hacer un select:
Código (php) [Seleccionar]

$result2=mysqli_query($conexion,"select cod_cliente,fecha,contacto,tipo,poblacion,provincia,pais,revisado,nombre_empresa,web,clientes_telefonos,nombre,apellidos
from clientes,clientes_telefonos,clientes_tratamiento,clientes_emails where cod_cliente='$cod_cliente' or fecha='$fecha' or contacto='$contacto' or tipo='$tipo'
or poblacion='$poblacion' or provincia='$provincia' or pais='$pais' or revisado='$revisado' or nombre_empresa='$nombre_empresa' or web='$web' or
clientes_telefonos='$telefonos' or nombre='$nombre' or apellidos='$apellidos' or clientes_emails='$clientes_emails' group by cod_cliente");
mysqli_set_charset($result2,"utf8");

/*$result3=mysqli_query($conexion,"select clientes_telefonos from clientes_telefonos where clientes_telefonos='$telefonos' group by cod_telefonos");
mysqli_set_charset($result3,"utf8");

$result4=mysqli_query($conexion,"select nombre,apellidos from clientes_tratamiento where nombre='$nombre' or apellidos='$apellidos' group by cod_tratamiento");
mysqli_set_charset($result4,"utf8");*/

$result5=mysqli_query($conexion,"select clientes_emails from clientes,clientes_telefonos,clientes_tratamiento,clientes_emails where
cod_cliente='$cod_cliente' or fecha='$fecha' or contacto='$contacto' or tipo='$tipo' or
poblacion='$poblacion' or provincia='$provincia' or pais='$pais' or revisado='$revisado' or nombre_empresa='$nombre_empresa' or web='$web' or
clientes_telefonos='$telefonos' or nombre='$nombre' or apellidos='$apellidos' or clientes_emails='$clientes_emails' group by cod_emails");
mysqli_set_charset($result5,"utf8");


while($fila2=mysqli_fetch_array($result2))
{
echo "<tr>";
echo "<td class='estilo_td1'>".$fila2['cod_cliente']."</td><td class='estilo_td'>".$fila2['fecha']."</td><td class='estilo_td'>".$fila2['contacto']."</td>";
echo "<td class='estilo_td'>".$fila2['tipo']."</td><td class='estilo_td'>".$fila2['poblacion']."</td><td class='estilo_td'>".$fila2['provincia']."</td>";
echo "<td class='estilo_td'>".$fila2['pais']."</td><td class='estilo_td'>".$fila2['revisado']."</td><td class='estilo_td'>".$fila2['nombre_empresa']."</td>";
echo "<td class='estilo_td'>".$fila2['web']."</td>";
echo "</tr>";

$result3=mysqli_query($conexion,"select clientes_telefonos from clientes_telefonos where cod_tel=".$fila2['cod_cliente']);
mysqli_set_charset($result3,"utf8");

$result4=mysqli_query($conexion,"select clientes_telefonos,nombre,apellidos from clientes_telefonos,clientes_tratamiento where
clientes_tratamiento.cod_tra=".$fila2['cod_cliente']." and clientes_telefonos.cod_tel=".$fila2['cod_cliente']);
mysqli_set_charset($result4,"utf8");

/*while($fila3=mysqli_fetch_array($result3))
{
*/

while($fila4=mysqli_fetch_array($result4))
{
echo "<tr>";

echo "<td class='estilo_td1'>".$fila4['clientes_telefonos']."</td>";

echo "<td class='estilo_td'>".$fila4['nombre']."</td><td class='estilo_td'>".$fila4['apellidos']."</td>";

echo "</tr>";

}

/*}*/


}


pero no seria mejor utilizar esto para hacer el select:

Código (sql) [Seleccionar]

select * from clientes_telefonos,clientes_tratamiento where cod_tel=5 and
clientes_telefonos.cod_telefonos=clientes_tratamiento.cod_tra_tel group by cod_telefonos;


como lo veis vosotros el insert y el select?
#52
tengo esto para insertar un usuario he cojido el ultimo insert into

$id=mysqli_insert_id($conexion); /* Te muestra el ultimo id_campo insertado en la tabla */

pero nose como cojer en el de $id_telefonos_bucle=mysqli_insert_id($conexion); ya que me muestra el ultimo del foreach anterior, como lo podria hacer, nose si sigo buenas metodologias:

Código (php) [Seleccionar]

$result2=mysqli_query($conexion,"insert into clientes (fecha,contacto,tipo,poblacion,provincia,pais,revisado,nombre_empresa,web) values
('$anadir_fecha','$anadir_contacto','$anadir_tipo','$anadir_poblacion','$anadir_provincia','$anadir_pais','$anadir_revisado',
'$anadir_nombre_empresa','$anadir_web')");

mysqli_set_charset($result2,"utf8");

/* INSERTAR clientes_telefonos  $p_scnt */
$id=mysqli_insert_id($conexion); /* Te muestra el ultimo id_campo insertado en la tabla */

$result3=mysqli_query($conexion,"insert into clientes_telefonos (clientes_telefonos,cod_tel) values ('$p_scnt','$id')");
mysqli_set_charset($result3,"utf8");

$id_telefonos=mysqli_insert_id($conexion);

/* INSERTAR clientes_tratamiento $p_scnt_nombre y $p_scnt_apellidos */
$result4=mysqli_query($conexion,"insert into clientes_tratamiento (nombre,apellidos,cod_tra,cod_tra_tel) values ('$p_scnt_nombre','$p_scnt_apellidos','$id',
'$id_telefonos')");
mysqli_set_charset($result4,"utf8");

foreach($pscnt as $numero){
       mysqli_query($conexion,"insert into clientes_telefonos (clientes_telefonos,cod_tel) values ('$numero','$id')");
}
     
      $id_telefonos_bucle=mysqli_insert_id($conexion);
     
      foreach($pscnt_nombre as $index => $nombre){
    $apellidos = $pscnt_apellidos[$index];
    mysqli_query($conexion,"insert into clientes_tratamiento (nombre, apellidos,cod_tra,cod_tra_tel) values ('$nombre','$apellidos','$id',
    '$id_telefonos_bucle')");
}
#53
como seria por cliente? es decir hacer sola una sql para todo? y como seria? llevo horas y horas y no entiendo el funcionamiento algo se me escapa  :huh:
#54
no te entiendo a que se refiere a modificar la sql?
esto es a lo me refiero
Código (php) [Seleccionar]
<tr><td>datos del cliente1<td><td>.....wfe</td>...............</tr>
<tr><td>telefono1</td><td>nombre1</td><td>apellido1</td><td>email1</td></tr>
<tr><td>telefono2</td><td>nombre2</td><td>apellido2</td><td>email2</td></tr>
<tr><td>telefono3</td><td>nombre3</td><td>apellido3</td><td>email3</td></tr>
.........
<tr><td>datos del cliente2<td><td>.....wfe</td>...............</tr>
......
.....
......
#55
buenas gente, tengo un problema al seleccionar 3 arrays y que me la muestre ordenadas, son 4 tablas diferentes, existen en este orden, clientes,clientes_telefonos,clientes_tratamiento y clientes_emails( en la tabla clientes hay datos sobre clientes, en la tabla clientes_telefonos pueden existir varios telefonos asociados a 1 cliente, en clientes_tratamiento pueden haber varias personas asociadas a mismo telefono y en la tabla emails pueden haber varios emails para varios clientes, entonces esto es lo que me resulta:

Código (php) [Seleccionar]

while($fila3[]=mysqli_fetch_array($result3))
{}
while($fila4[]=mysqli_fetch_array($result4))
{}
while($fila5[]=mysqli_fetch_array($result5))
{}

while($fila2=mysqli_fetch_array($result2))
{
echo "<tr>";
echo "<td class='estilo_td1'>".$fila2['cod_cliente']."</td><td class='estilo_td'>".$fila2['fecha']."</td><td class='estilo_td'>".$fila2['contacto']."</td>";
echo "<td class='estilo_td'>".$fila2['tipo']."</td><td class='estilo_td'>".$fila2['poblacion']."</td><td class='estilo_td'>".$fila2['provincia']."</td>";
echo "<td class='estilo_td'>".$fila2['pais']."</td><td class='estilo_td'>".$fila2['revisado']."</td><td class='estilo_td'>".$fila2['nombre_empresa']."</td>";
echo "<td class='estilo_td'>".$fila2['web']."</td>";
echo "</tr>";

foreach($fila3 as $value){
echo "<tr>";
echo "<td class='estilo_td'>".$value['clientes_telefonos']."</td>";
}

foreach($fila4 as $value4){
echo "<td class='estilo_td'>".$value4['nombre']."</td><td class='estilo_td'>".$value4['apellidos']."</td>";
}

foreach($fila5 as $value5){
echo "<td class='estilo_td'>".$value5['clientes_emails']."</td>";
echo "</tr>";
}

}


me sale bien la tabla clientes, me sale bien la tabla telefonos, pero la tabla tratamiento y emails no se ajustan con el select.

como lo hariais para que se muestre <tr><td>telefono1</td><td>nombre1</td><td>apellido1</td><td>email1</td></tr>   1 por linea <tr> ++

Mod: Temas sobre PHP van al subforo de PHP.
#56
gracias neng solucionado MinusFour
#57
buenas tengo una tabla que es clientes tratamiento $pscnt_nombre y $pscnt_apellidos vienen de un array para que sea un bucle de insertar tantos nombre y apellidos que quiera en una tabla apartir de $_POST[] , el problema viene que quiero unir $nombre y $apellidos en una misma query pero no se como hacerlo por foreach para que resulte exitoso, es decir que sea solo un foreach las 2 consultas.

Como lo hariais gente? alguien experto por el foro? o que se le de bien estas cosas? es que me lleva mucho lio y no se como puedo hacerlo todo en una consulta sql solo atraves de foreach?

Código (php) [Seleccionar]

foreach($pscnt_nombre as $nombre){
     
      mysqli_query($conexion,"insert into clientes_tratamiento (nombre,cod_tra) values ('$nombre','$id')");
     }
   
     
foreach($pscnt_apellidos as $apellidos){
      mysqli_query($conexion,"insert into clientes_tratamiento (apellidos,cod_tra) values ('$apellidos','$id')");
     }



Mod: Temas sobre PHP van al subforo de PHP
#58
estoy usando mysql,se podria hacer en una sql?
#59
Buenas mi nombre es sergio, estoy viendo, como puedo insertar con una sql solo varios datos en varias tablas, este es el esquema que tengo, haber si alguien me puede guiar.

Código (sql) [Seleccionar]

--
-- CLIENTES
--
CREATE TABLE clientes(
cod_cliente mediumint not null auto_increment,
fecha VARCHAR(200),
contacto VARCHAR(200),
tipo VARCHAR(200),
poblacion VARCHAR(200),
provincia VARCHAR(200),
pais VARCHAR(200),
revisado VARCHAR(200),
nombre_empresa VARCHAR(200),
web VARCHAR(200),
CONSTRAINT PKCL PRIMARY KEY (cod_cliente)
) ENGINE=InnoDB;

--
-- CLIENTES_TELEFONOS
--
CREATE TABLE clientes_telefonos(
cod_telefonos int not null auto_increment,
clientes_telefonos VARCHAR(200),
cod_tel mediumint,
CONSTRAINT PKCLTE PRIMARY KEY (cod_telefonos),
CONSTRAINT FKCLTE FOREIGN KEY (cod_tel) REFERENCES clientes(cod_cliente) ON DELETE CASCADE
) ENGINE=InnoDB;

--
-- CLIENTES_TRATAMIENTO
--
CREATE TABLE clientes_tratamiento(
cod_tratamiento int not null auto_increment,
nombre VARCHAR(200),
apellidos VARCHAR(200),
cod_tra mediumint,
CONSTRAINT PKCLTR PRIMARY KEY (cod_tratamiento),
CONSTRAINT FKCLTR FOREIGN KEY (cod_tra) REFERENCES clientes(cod_cliente) ON DELETE CASCADE
) ENGINE=InnoDB;

--
-- CLIENTES_EMAILS
--
CREATE TABLE clientes_emails(
cod_emails int not null auto_increment,
clientes_emails VARCHAR(200),
cod_email mediumint,
CONSTRAINT PKCLEM PRIMARY KEY (cod_emails),
CONSTRAINT FKCLEM FOREIGN KEY (cod_email) REFERENCES clientes(cod_cliente) ON DELETE CASCADE
) ENGINE=InnoDB;


sugerencias? o mejoras sobre las mismas? o parece estar bien organizado?, Gracias
#60
pero como podria hacer para eliminarlo asi con el anterior codigo, es decir como podria agregarle un remove(eliminar) linea que sale:

Código (javascript) [Seleccionar]

$(function() {
        var scntDiv = $('#p_scents');
        var i = $('#p_scents p').size() + 1;

        $('#addScnt').live('click', function() {
                $('<p><label for="p_scnts">Telefono:<input type="text" id="p_scnt" size="20" name="pscnt'+ i +'" value="" placeholder="Input Value" />Nombre:<input type="text" id="p_scnt" size="20" name="pscnt_nombre'+ i +'" value="" placeholder="Input Value" /></label>Apellidos:<input type="text" id="p_scnt" size="20" name="pscnt_apellidos'+ i +'" value="" placeholder="Input Value" /></label> <a href="#" id="remScnt">Eliminar</a></p>').appendTo(scntDiv);
                i++;
                return false;
        });

        $('#remScnt').live('click', function() {
                if( i > 2 ) {
                        $(this).parents('p').remove();
                        i--;
                }
                return false;
        });
});