Visualizzazione dei risultati da 1 a 4 su 4

Discussione: problema php

  1. #1

    problema php

    ciao a tutti
    sono openmind
    voglio risolvere un problema che ho con il mio database Mysql.
    Io ha un database che si chiama autovetture
    ho una tabella che si chiama intere nella quale sono memorizzati questi campi:
    id_vett_int:campo auto incrementabile che mi da id vettura
    codice_vett_int: campo codice della vettura
    marca_vett_int: marca della vettura(fiat, ford ecc.
    modello_vett_int: modello della vettura(panda,punto...)
    cil_vett_int:cilindrata della vettura
    e altri campi che definiscono le altre caratteristiche della vettura(kilometraggio, tagliandi proprietari ecc.)
    Ho già inserito nel database una serie di autovetture con tutti i dati che vi ho elencato.
    Ho elaborato una form html che si chiama selezionavettura.html nella quale ci sono 3 tag select html, 1 per il codice della vettura, 2 per la marca della vettura, 3 per il modello della vettura.
    Adesso voglio che il visitatore del sito possa selezionare attraverso le select(menu a tendina)
    la vettura dal database estraendone i dati(tutti) selezionando codice_vett_int,marca_vett_int,modello_vett_int che sono i nomi del campo del database.
    I nomi delle select html sono :'codice' per il codice vettura,'marca' per la marca della vettura,'modello' per il modello.
    Vi dico anche qual'è il messaggio di errore che mi dà easyphp:
    undefined variable marca in estraivettura.php in line 10

    Ho già creato iil codice php di visualizzazione dei dati che si chiama estraivettura.php.
    Ma ogni volta che richiamo come parametri della select 'codice' , 'marca' e ' modello', e li inserisco come variabili nello script php il motore php mi dice che codice marca e modello non sono definiti come indici e quindi non esegue la select.
    L'istruzione imputata è la seguente:
    $marca_vett_int=$_REQUEST['marca'];
    $sql=("SELECT * FROM intere where marca_vett_int like '$marca'");
    $result=mysql_query($sql,$connessione);
    $row=my_sql_fetch_array($result,$connessione);
    while
    ($row=my_sql_fetch_array($result,$connessione))
    {
    echo $row['marca'];
    }

    $num=mysql_numrows($result);
    ho provato anche ad inserire $_POST['marca'] ma mi dice sempre che marca non è un indice valido.
    Vi spedisco anche il codice di inserimento di selezionavettura.html sperando che qualcuno di voi mi sappia dare una risposta in breve tempo e risolvere il problema.
    <select name="marca" size="1" style="position: absolute; left: 239px; top: 67px; width: 156px; background-color: rgb(223, 255, 255); color: rgb(0, 0, 255); font-family: Arial; font-weight: bold; font-size: 16px; z-index: 3;">
    <option selected="selected" value="fiat">fiat</option>
    <option value="ford">ford</option>
    <option value="alfa romeo">alfa romeo</option>
    <option value="crysler">crysler</option>
    <option value="ferrari">ferrari</option>
    <option value="wolkswagen">wolkswagen</option>
    <option value="volvo">volvo</option>
    <option value="mercedes">mercedes</option>
    <option value="bmw">bmw</option>
    <option value="toyota">toyota</option>
    <option value="hiundai">hiundai</option>
    <option value="lancia">lancia</option>
    <option value="jeep">jeep</option>
    </select>
    Grazie a tutti anticipatamente per l'interesse.
    A chi sa darmi una risposta utile offro una pizza
    vi invio anche il messaggio di errore che mi dà easyphp:
    undefined variable marca in estraivettura.php in line 10
    e undefined index marca in estraivettura.php in line 15

    Ciao a tutti
    Ivo

  2. #2
    Utente di HTML.it L'avatar di Luke70
    Registrato dal
    Jul 1999
    Messaggi
    767
    Mamma mia che confusione...

    La prossima volta usa i tag per inserire il codice php altrimenti non si capisce nulla

    Prova così:
    Codice PHP:
    $marca=$_REQUEST['marca'];
    $sql=("SELECT * FROM intere where marca_vett_int like '$marca'");
    $result=mysql_query($sql,$connessione);
    $row=my_sql_fetch_array($result,$connessione);
    while
    (
    $row=my_sql_fetch_array($result,$connessione))
    {
    echo 
    $row['marca_vett_int'];

    Hai fatto un po' di confusione tra nomi di variabili e nomi di colonne del DB
    1. La variabile $marca non l'avevi definita prima di inserirla nella query, ma avevi definito $marca_vett_int che poi non usi nella query

    2. La colonna si chiama marca_vett_int e quindi non è $row['marca'], ma $row['marca_vett_int']


    Guarda che se funziona voglio la pizza davvero!!! Ogni promessa è debito!

  3. #3

    risposta

    Ok ci proverò. Se ci riesco ti mando la pizza a Udine
    Ciao

  4. #4

    risposta2

    Grazie per il tuo interessamento, ma continua a dirmi che 'marca' non è un codice definito.
    No problem, il fatto è che l'array è bidimensionale e che invede di assegnare il valore di 'marca' alla variabile devo assegnare tutti i valori(fiat,ford, ecc.), ciclandolo con un ciclo for all'interno di php.
    E' un lavoro lungo ma ce la farò lo stesso.
    Ho avuto questa illuminazione qusta notte.
    Grazie lo stesso
    Ivo

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 © 2024 vBulletin Solutions, Inc. All rights reserved.