• User Newbie

    errore query

    ciao a tutti!

    [PHP]<?php
    mysql_query("SET CHARACTER SET utf8");
    mysql_query("SET NAMES utf8");
    $rowsPerPage = 20;
    $pageNum = 1;
    if (isset($_GET['page'])) {
    $pageNum = $_GET['page'];
    }
    $offset = ($pageNum - 1) * $rowsPerPage;
    $lettera=$_REQUEST['lettera'];
    if ($lettera == NULL) {
    $lettera = '';
    } else {
    $lettera=$_REQUEST['lettera'];
    }
    if ($spec == NULL and $lettera == NULL and $tipo_medico == 1) {
    $Sqlqr_gl="select * from medici_chirurghi where cognome != '' order by IF (ASCII(LOWER(cognome)) >=ASCII (LOWER('$lettera')),1,2),cognome LIMIT $offset, $rowsPerPage";
    $query="SELECT COUNT(m.id_albo) AS numrows from medici_chirurghi where cognome != ''";
    } else if ($spec == NULL and $lettera != NULL and $tipo_medico == 1) {
    $Sqlqr_gl="select * from medici_chirurghi where cognome != '' and cognome LIKE '$lettera%' order by cognome LIMIT $offset, $rowsPerPage";
    $query="SELECT COUNT(m.id_albo) AS numrows from medici_chirurghi where cognome != '' and cognome LIKE '$lettera%'";
    } else if ($spec != NULL and $tipo_medico == 1) {
    $Sqlqr_gl="select m.* from medici_chirurghi m, matricola_specialita ms, specialita2 s where cognome != '' and s.id_spec = $spec and s.id_spec = ms.id_specialita and m.matricola2 = ms.matricola order by IF (ASCII(LOWER(cognome)) >=ASCII (LOWER('$lettera')),1,2),cognome LIMIT $offset, $rowsPerPage";
    $query="SELECT COUNT(m.id_albo) AS numrows from medici_chirurghi m, matricola_specialita ms, specialita2 s where cognome != '' and s.id_spec = $spec and s.id_spec = ms.id_specialita and m.matricola2 = ms.matricola";
    } else if ($spec == NULL and $lettera == NULL and $tipo_medico == 2) {
    $Sqlqr_gl="select * from medici_odontoiatri where cognome != '' order by IF (ASCII(LOWER(cognome)) >=ASCII (LOWER('$lettera')),1,2),cognome LIMIT $offset, $rowsPerPage";
    $query="SELECT COUNT(m.id_albo) AS numrows from medici_odontoiatri where cognome != ''";
    } else if ($spec == NULL and $lettera != NULL and $tipo_medico == 2) {
    $Sqlqr_gl="select * from medici_odontoiatri where cognome != '' and cognome LIKE '$lettera%' order by cognome LIMIT $offset, $rowsPerPage";
    $query="SELECT COUNT(m.id_albo) AS numrows from medici_odontoiatri where cognome != '' and cognome LIKE '$lettera%'";
    } else if ($spec != NULL and $tipo_medico == 2) {
    $Sqlqr_gl="select m.* from medici_odontoiatri m, matricola_specialita ms, specialita2 s where cognome != '' and s.id_spec = $spec and s.id_spec = ms.id_specialita and m.matricola2 = ms.matricola order by IF (ASCII(LOWER(cognome)) >=ASCII (LOWER('$lettera')),1,2),cognome LIMIT $offset, $rowsPerPage";
    $query="SELECT COUNT(m.id_albo) AS numrows from medici_odontoiatri m, matricola_specialita ms, specialita2 s where cognome != '' and s.id_spec = $spec and s.id_spec = ms.id_specialita and m.matricola2 = ms.matricola";
    }
    echo "<div style=display:none>".$Sqlqr_gl."</div>";
    $qr_gl=mysql_query($Sqlqr_gl,$connessione)or die(mysql_error());
    while($r_gl=mysql_fetch_array($qr_gl,MYSQL_ASSOC)) {
    if ($r_gl['cognome'] != NULL) {
    ?>[/PHP]

    [PHP]<?php
    if ($idmenu == '44') {
    $tipo_medico = '2';
    } else if ($idmenu == '45') {
    $tipo_medico = '1';
    }
    $result=mysql_query($query) or die('Error, seconda query failed');
    $row=mysql_fetch_array($result, MYSQL_ASSOC);
    $numrows = $row['numrows'];
    $maxPage = ceil($numrows/$rowsPerPage);
    // print the link to access each page
    $self = $_SERVER['PHP_SELF'];
    $nav = '';
    for($page = 1; $page <= $maxPage; $page++) {
    if ($page == $pageNum) {
    $nav .= "<strong><a href='#'>.$page.</a></strong>"; // no need to create a link to current page
    } else {
    $nav .= " <a href="$self?page=$page&idmenu=$idmenu&lettera=$lettera&spec=$spec&tipomedico=$tipo_medico">.$page.</a> ";
    }
    }
    if ($pageNum > 1) {
    $page = $pageNum - 1;
    $prev = " <a href="$self?page=$page&idmenu=$idmenu&lettera=$lettera&spec=$spec&tipomedico=$tipo_medico"><</a> ";
    $first = " <a href="$self?page=1&idmenu=$idmenu&lettera=$lettera&spec=$spec&tipomedico=$tipo_medico">[First Page]</a> ";
    } else {
    $prev = ' '; // we're on page one, don't print previous link
    $first = ' '; // nor the first page link
    }
    if ($pageNum < $maxPage) {
    $page = $pageNum + 1;
    $next = " <a href="$self?page=$page&idmenu=$idmenu&lettera=$lettera&spec=$spec&tipomedico=$tipo_medico">></a> ";
    $last = " <a href="$self?page=$maxPage&idmenu=$idmenu&lettera=$lettera&spec=$spec&tipomedico=$tipo_medico">[Last Page]</a> ";
    } else {
    $next = ' '; // we're on the last page, don't print next link
    $last = ' '; // nor the last page link
    }
    ?>[/PHP]

    l errore è : Error, seconda query failed
    mi potreste dare una mano? grazie a tutti


  • ModSenior

    Ciao,
    invece di:
    [PHP]
    $result=mysql_query($query) or die('Error, seconda query failed');
    [/PHP]

    metti:
    [PHP]
    $result=mysql_query($query) or die('Error, seconda query failed: '.mysql_error());
    [/PHP]

    In maniera tale da visualizzare l'errore generato.


  • User Newbie

    l errore è:
    Unknown column 'm.id_albo' in 'field list'

    grazie


  • ModSenior

    L'errore è nelle query come questa:
    [PHP]$query="SELECT COUNT(m.id_albo) AS numrows from medici_odontoiatri where cognome != '' and cognome LIKE '$lettera%'";[/PHP]

    Dove non esiste m