Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2000
    Messaggi
    727

    come estrarre SOLO alcuni record di un CAMPO

    sono un pò alle prime armi con php e mysql... scusate... mi spiego: io attualmente estraggo dal mio db TUTTI i record dei vari campi così:

    $dati = mysql_query("select ab_id, ab_marca, ab_des, ab_prezzo, ab_chi from tabella");

    avrei invece bisogno in UN SOLO CAMPO di estrarre SOLO i record che CONTENGANO ad esempio un numero di telefono ma non riesco bene?? mi potete aiutare x favore??
    ho fatto così....

    $dati = mysql_query("select ab_id, ab_marca, ab_des, ab_prezzo, ab_chi from tabella where ab_chi = '011591304' ");

    e mi viene pagina bianca....

  2. #2
    dunque, se il campo ab_chi è di tipo numerico, non servono gli apici ' se no dovrebbe andare bene quella che hai scritto, però occhio che mi sembra che tua abbia lasciato uno spazio dopo l'ultima chiusura...
    prova cmq a fare così, separando i passaggi con questa:
    codice:
    $query = "SELECT ab_id, ab_marca, ab_des, ab_prezzo, ab_chi FROM tabella WHERE ab_chi = '011591304'";
    $dati = mysql_query($query) or die (mysql_error());
    aggiungendo il die in caso di erore così potrai vedere se ci sono degli errori nella query


  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2000
    Messaggi
    727
    aiutooooo
    ho provato come mi hai detto tu ma continua a darmi spazio bianco nello punto della pagina dove ho messo gli echo per visualizzare i risultati
    e non mi comunica alcun errore quasi come NOn trovasse quel numero che invece c'è, ti assicuro
    poi se per prova tolgo WHERE ab_chi = '226595'
    si rivedono tutti gli echo
    è sto WHERE ab_chi = 'xxxx' che gli da fastidio
    comecacchioèpossibile?

  4. #4
    puoi postare il codice per intero?
    File Reality.sys corrupted. Reboot universe (Y/N)? Y_

  5. #5
    Utente di HTML.it
    Registrato dal
    Apr 2003
    Messaggi
    534
    [supersaibal]Originariamente inviato da theseo
    aiutooooo
    ho provato come mi hai detto tu ma continua a darmi spazio bianco nello punto della pagina dove ho messo gli echo per visualizzare i risultati
    e non mi comunica alcun errore quasi come NOn trovasse quel numero che invece c'è, ti assicuro
    poi se per prova tolgo WHERE ab_chi = '226595'
    si rivedono tutti gli echo
    è sto WHERE ab_chi = 'xxxx' che gli da fastidio
    comecacchioèpossibile? [/supersaibal]
    Dipende anche dal formato del campo. I numeri telefonici andrebbero memorizzati come stringhe e non come numeri. Poichè in effetti di stringhe si tratta e non di numerico. Problema di zero davanti al numero?

  6. #6
    Utente di HTML.it
    Registrato dal
    Jul 2000
    Messaggi
    727
    x lonelywolf: grazieee

    <?php
    $host="xxxxx";
    $user="xxxxx";
    $pass="xxxxxx";
    mysql_connect($host,$user,$pass) or die ("errore nella connessione");
    mysql_select_db("xxxxxx") or die ("errore nella selezione del database");
    if ($sortby=="")
    $order="ab_id DESC";
    else if ($sortby=="prezzo")
    $order="ab_prezzo";
    else if ($sortby=="marca")
    $order="ab_marca";
    else if ($sortby=="chi")
    $order="ab_chi";

    $query = "SELECT ab_id, ab_marca, ab_des, ab_prezzo_or, ab_prezzo, ab_chi FROM abbigliamento WHERE ab_chi = 'Lanzo'";
    $dati = mysql_query($query) or die (mysql_error());
    while ( $array = mysql_fetch_array($dati))
    {
    echo "<tr bgcolor=\"#FFFFCC\">";
    echo "<td><div align=\"center\"><font face=\"Verdana, Arial, Helvetica, sans-serif\" size=\"2\" color=\"#000000\">
    $array[ab_marca]
    </font></div></td>";
    echo "<td><div align=\"center\"><font face=\"Verdana, Arial, Helvetica, sans-serif\" size=\"1\" color=\"#000000\">
    $array[ab_des]
    </font></div></td>";
    echo "<td><div align=\"center\"><font face=\"Verdana, Arial, Helvetica, sans-serif\" size=\"1\" color=\"#000000\">
    $array[ab_prezzo_or]
    </font></div></td>";
    echo "<td><div align=\"center\"><font face=\"Verdana, Arial, Helvetica, sans-serif\" size=\"2\" color=\"#000000\">
    $array[ab_prezzo]
    </font></div></td>";
    echo "<td><div align=\"center\"><font face=\"Verdana, Arial, Helvetica, sans-serif\" size=\"2\" color=\"#000000\">
    $array[ab_chi]
    </font></div></td>";
    echo "<td><a href=\"07_modifica.php?id=$array[ab_id]\">modifica</td> ";
    echo "<td><a href=\"09_elimina.php?id=$array[ab_id]\">elimina</td> ";
    echo "</tr>";
    }
    mysql_close();
    ?>

    x pierotto: ho provato anche con del testo e non va lo stesso (vedi ad esempio il codice qua sopra)

  7. #7
    Utente di HTML.it
    Registrato dal
    Apr 2003
    Messaggi
    534
    Posta la struttura della tua tabella "abbigliamento". Eventualmente prova anche con LIKE invece di uguale

  8. #8
    Ho risistemato un po' il codice:
    1 - tolto gli if annidati (a me non piacciono) e messo un bello switch
    2 - aggiunto un controllo per vedere se effettivamente ci sono risultati dalla select
    3 - alla query ho aggiunto l'ordinamento (lo switch/iff annidati erano per quello vero? )
    4 - se hai fatto copia/incolla dall'originale era il caso di non andare a capo all'interno degli echo e mettere gli apici ai nomi dei campi.

    Domandina: sei sicuro che Lanzo ci sia nel db scritto esattamente così senza spazi o altro intorno?

    Se non sei sicuro prova con .......where ab_chi like '%Lanzo%'.....

    Ed ecco il codice:
    Codice PHP:
    <?php 
    $host
    ="xxxxx"
    $user="xxxxx"
    $pass="xxxxxx"
    mysql_connect($host,$user,$pass) or die ("errore nella connessione"); 
    mysql_select_db("xxxxxx") or die ("errore nella selezione del database"); 

    switch (
    $sortby){
        case 
    "chi":  $order="ab_chi";
            break;
        case 
    "prezzo"$order="ab_prezzo";
            break;
        case 
    "marca"$order="ab_marca"
            break;
        default: 
    $order="ab_id DESC";
    }

    $query "SELECT ab_id, ab_marca, ab_des, ab_prezzo_or, ab_prezzo, ab_chi FROM abbigliamento WHERE ab_chi = 'Lanzo' order by $order"

    $dati mysql_query($query) or die (mysql_error());

    $righe mysql_num_rows ($dati);

    if (
    $righe == 0){
        echo 
    "Mi dispiace, nessun articolo inserita.";
    }
    else {
    echo 
    "<table>
    while ( 
    $array = mysql_fetch_array($dati)) 

    echo "
    <tr bgcolor=\"#FFFFCC\">"
    echo 
    "<td><div align=\"center\"><font face=\"Verdana, Arial, Helvetica, sans-serif\" size=\"2\" color=\"#000000\">$array['ab_marca'] </font></div></td>"
    echo 
    "<td><div align=\"center\"><font face=\"Verdana, Arial, Helvetica, sans-serif\" size=\"1\" color=\"#000000\">$array['ab_des'] </font></div></td>"
    echo 
    "<td><div align=\"center\"><font face=\"Verdana, Arial, Helvetica, sans-serif\" size=\"1\" color=\"#000000\">$array['ab_prezzo_or']</font></div></td>"
    echo 
    "<td><div align=\"center\"><font face=\"Verdana, Arial, Helvetica, sans-serif\" size=\"2\" color=\"#000000\">$array['ab_prezzo']</font></div></td>"
    echo 
    "<td><div align=\"center\"><font face=\"Verdana, Arial, Helvetica, sans-serif\" size=\"2\" color=\"#000000\">$array['ab_chi'] /font></div></td>"
    echo 
    "<td><a href=\"07_modifica.php?id=$array[ab_id]\">modifica</td> "
    echo 
    "<td><a href=\"09_elimina.php?id=$array[ab_id]\">elimina</td> "
    echo 
    "</tr>"
    }
    echo 
    "</table>
    mysql_free_result (
    $dati);
    }

    mysql_close(); 
    ?>
    File Reality.sys corrupted. Reboot universe (Y/N)? Y_

  9. #9
    Utente di HTML.it
    Registrato dal
    Jul 2000
    Messaggi
    727
    fattooooooooooooooooo
    grazie a tutti la soluzione era:

    WHERE ab_chi like '%011591304%'";

    invece che

    WHERE ab_chi = '%011591304%'";

    grazie ancora

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.