Visualizzazione dei risultati da 1 a 4 su 4

Discussione: INFO estrazione

  1. #1

    INFO estrazione

    Salve a tutti ragazzi ho un dubbio è non riesco a risolverlo quindi volevo chiedere a voi un consiglio.
    Bene.
    Io ho dei dati su una tabella organizzati in questo modo:

    ID cod_giorno cod_classe cod_materia n_ora
    1 1 23 5 1
    2 1 23 1 2
    3 1 23 1 3
    4 3 23 7 4
    5 2 23 15 5


    io questi dati dovrei estrarli ed inserirli in una tabella nel seguente modo:

    in base al giorno ed alla classe che io seleziono in precedenza passandone i valori, per provarlo ho impostato io un codice di una classe in questo caso il cod 23.

    la tabella dovrebbe crearsi con queste caratteristiche:

    || || LUN || MAR || MER || GIO || VEN || SAB ||
    || 1 || 5
    || 2 || 1
    || 3 || 1
    || 4 || 7
    || 5 || 15


    Ovvero i codici delle materie dovrebbero inserirsi nel giorno esatto e nell ora esatta dell'orario..

    io fin'ora ho prodotto questo codice:

    Codice PHP:
    <?php include 'db_connection/config.php'; include 'db_connection/db_connection.php'; echo "<table border='1'>"; echo "<tr> <th></th> <th>Lunedi</th> <th>Martedi</th> <th>Mercoledi</th> <th>Giovedi</th> <th>Venerdi</th> <th>Sabato</th> "; for($i=1;$i<=6;$i++) { $result mysql_query("SELECT * FROM orario WHERE cod_giorno='".$i."' AND cod_classe=23") or die(mysql_error()); while($row mysql_fetch_array$result )) { { echo "<tr><td>"; echo $row['n_ora']; echo "</td><td>"; echo $row['cod_materia']; echo "</td>"; } } echo "</tr>"; echo "</table>"; } ?>[list][/list][CODE]<?php include 'db_connection/config.php'; include 'db_connection/db_connection.php'; echo "<table border='1'>"; echo "<tr> <th></th> <th>Lunedi</th> <th>Martedi</th> <th>Mercoledi</th> <th>Giovedi</th> <th>Venerdi</th> <th>Sabato</th> "; for($i=1;$i<=6;$i++) { $result mysql_query("SELECT * FROM orario WHERE cod_giorno='".$i."' AND cod_classe=23") or die(mysql_error()); while($row mysql_fetch_array$result )) { { echo "<tr><td>"; echo $row['n_ora']; echo "</td><td>"; echo $row['cod_materia']; echo "</td>"; } } echo "</tr>"; echo "</table>"; } ?>
    Io l'aveva pensata inserendo un for che parte da 1 e arriva a 6 massimo(ovvero i giorni della settimana) e in base all'indice esegue la query estraendo i dati il problema è che non riesco ad inserire i dati all'interno della tabella non trovando la quadra......

    sono sicuro di aver scritto una grande ca**ata
    ma il caldo è contro producente.....

    Grazie in anticipo per l'aiuto
    coordiali saluti marco

  2. #2
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    Con:

    codice:
    SELECT * FROM tabella WHERE cod_classe=23 ORDER BY cod_giorno ASC, n_ora ASC
    recuperi le info di una certa classe ordinandole per giorno e ora, poi cicli sui risultati:

    Codice PHP:
    $orario = array();
    while (...) { 
    // cicla con le funzioni SQL usando la var. $row, p.es.
      
    $giorno $row['cod_giorno'];
      
    $ora $row['n_ora'];
      
    $materia $row['cod_materia']; // oppure recupera il "nome" della materia...
      
    $orario[$giorno][$ora] = $materia;
    }; 
    poi scorri l'orario, considerando che puoi avere anche celle "vuote":
    Codice PHP:
    for ($giorno ... ) { // 1..6
      
    for ($ora ... ) { // 1..5
        
    $materia = ((isset($orario[$giorno][$ora]))?($orario[$giorno][$ora]):('(vuota)'));
        
    // ...
      
    };
    }; 

  3. #3
    Ciao volevo ringraziarti sentitamente per l'aiuto datomi

    Grazie ancora

    Saluti Marco

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    beh... prego!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.