miércoles, 27 de marzo de 2019

Consutla Cruzada Sql While While

Aquí tenemos otra forma de realizar una consulta cruzada con dos tablas distintas.
En esta ocasión con dos While.

<?php

            require 'Conections/conection.php';
            $db = mysqli_connect($db_host,$db_user,$db_pass,$db_name);
            if (!$db){ die ("Es imposible conectar con la bbdd ".$db_name."</br>".mysqli_connect_error());
            }

            global $db;
            global $t1;
           
                $vname1 = "status";
                $vname1 = "`".$vname1."`";
                $consulta1 =  "SELECT * FROM $vname1  WHERE `hidden` = 'no' ORDER BY `year` DESC ";
                $qc1 = mysqli_query($db, $consulta1);
                $qc1n = mysqli_num_rows($qc1);

PHP Sql consulta cruzada. SELECT INNER JOIN WHERE

Hola a todos.
Vamos a ver como relacionar dos tablas y realizar una consulta en la tabla1 en base a los valores de la tabla2.
Recogiendo los datos de la consulta dentro de un while.
A por ello.

$sqli =  "SELECT * FROM `tabla1` INNER JOIN `tabla2`
ON `tabla1`.`year` = `tabla2`.`year`
WHERE
`tabla2`.`hidden` = 'no' AND
`tabla1`.`year` LIKE '%$dyt1%' AND `tabla1`.`mes` $sent ORDER BY `tabla1`.$orden ";

$qbi = mysqli_query($db, $sqli);

viernes, 22 de marzo de 2019

Php Select con consulta bbdd y While

Select con consulta a bbdd & While.
Muy  facilito, observar como la etiqueta del option se cierra después del if dentro del while, dentro del segundo print. esta es la clave:

<?php

print("<select name='dy'>
 <option value=''>YEAR</option>");
 global $db;
 global $t1;
 $t1 = $_SESSION['ref'];
 $t1 = strtolower($t1);
 $t1 = $t1."_status";
 $t1 = "`".$t1."`";
$sqlb =  "SELECT * FROM $t1 ORDER BY `year` DESC ";
$qb = mysqli_query($db, $sqlb);

if(!$qb){print("* ".mysqli_error($db)."<br/>");
 } else {
 while($rows = mysqli_fetch_assoc($qb)){
 print ("<option value='".$rows['ycod']."' ");
 if($rows['ycod'] == $defaults['dy']){
 print ("selected = 'selected'");
 }
 print ("> ".$rows['year']." </option>");
 }


?>

$defaults[''] viene dado por el condicinal y el input del formulario:
 if($_POST['todo']){
 $defaults = $_POST;
 } else {
 $defaults = array ('year' => '',
 'ycod' => '',
 'stat' => '',
 'hidden' => '',
 'Orden' => $ordenar,
     );