Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 23
  1. #1

    Estrazione dati da db - identificativo

    Ho un database con i seguenti campi
    id
    Nome azienda
    Descrizione azienda

    Per estrarre i dati potrei fare in questo modo: creare una pagina result.php?id_azienda=id

    Esiste un modo per estrarre i dati facendo figurare nel link il nome dell'azienda?

    Grazie

  2. #2
    Ciao !!\Freedom9/!!

    postresti passare il nome dell'azienda al posto dell'id, ma perderesti l'univocità della query in caso di omonimia, senza contare i problemi sugli spazi nel nome.

    L'unica alternativa è passarli entrambi

    result.php?id_azienda=id&nome_azienda=nomeazienda

    spero di esserti stato utile
    www.clickeweb.com Realizzazione siti web

  3. #3
    Utente di HTML.it L'avatar di skjobax
    Registrato dal
    Jan 2010
    Messaggi
    569
    Anche se credo sia una scemenza, potresti fare in modo che il nome azienda, nel DB, sia senza spazi, per esempio criptandolo...

    Codice PHP:
    <?php
    $nome_azienda 
    "html.it";
    echo 
    base64_encode($nome_azienda); // aHRtbC5pdA==
    echo sha1($nome_azienda); // 07eabbc623882efda3332aa50a9d3ef55cdb61d8
    echo md5($nome_azienda); // c023bfd4116ee4830d1453cd6a015b4e
    echo hash("sha512"$nome_azienda); // 589c5e5be0f955d0fa12d40d5cb7bcd0ed113b98a0cf30f1edcbc50ae1d6010cefb5a73b5081ba9656426fb115476ba1b5e3a7f1932a4acf8f88637a23397614
    echo hash("ripemd160"); // 6557d752229c8eabfb103210fc295a44a04b322e
    // ...
    ?>
    Ma comunque penso che sia una scemenza quello che ho detto...

  4. #4
    Potresti passare il nome dell'azienda utilizzando la funzione urlencode() che ti permette di ovviare ai problemi dovuti agli spazie e ad altri caratteri speciali e mettere in sessione l'id dell'azienda. In questo modo nella pagina result.php per recuperare i dati dell'azienda dal DB non utilizzi il nome passato, ma continui ad utilizzare l'id contenuto in sessione.
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  5. #5
    Il punto fondamentale di un identificativo e' che deve essere univoco, quindi se il nome dell'azienda in se' non lo e', devi renderlo tale. Inoltre se vuoi i "pretty URL" dovresti lavorare sull'intero indirizzo tramite URL rewrite eliminando quindi la query string, passando cioe' da:
    a qualcosa come:
    Se vuoi fare in modo che il nome venga mostrato nell'URL la cosa migliore da fare e' creare una versione del nome "URL friendly", cioe' - ad esempio - sostituire spazi con trattini, usare solo minuscole, eliminare apostrofi e via dicendo. Inoltre per renderlo univoco puoi unire id e nome, ad esempio se hai un'azienda che si chiama "Trasporti Fias" e ha id 143:
    in questo modo l'azienda viene identificata solo dall'id e il resto appare solo per comodita' visiva.

    Alternativamente all'atto dell'inserimento di un'azienda nel database, oltre al nome puoi registrare anche uno stub (la versione del nome adattata per URL) avendo cura di renderlo unico (quindi se c'e' un'atra azienda con lo stesso nome fai in modo di differenziare il secondo stub aggiungendo un numero o altro identificativo univoco).

    Personalmente scarterei la soluzione con le sessioni, perche' sostanzialmente vanifica l'idea di URL: la risorsa non sarebbe direttamente raggiungibile se non hai gia' visitato un'altra pagina che ha settato la sessione, il che rende il sistema abbastanza inutile.

  6. #6
    Grazie a tutti.
    Utilizzerò il metodo dell'id sessione seguito da nome azienda "depurato".

  7. #7
    Originariamente inviato da !!\Freedom9/!!
    Grazie a tutti.
    Utilizzerò il metodo dell'id sessione seguito da nome azienda "depurato".
    E come fai ad arrivare al link direttamente?

  8. #8
    Originariamente inviato da k.b
    E come fai ad arrivare al link direttamente?
    Bella domanda!
    Onestamente non saprei ancora come fare. Se hai già un'idea su come potrei operare ti prego di dirmelo.

    Ricordo di aver letto velocemente un articolo che ne parlava, qualche anno fa. Forse qui in html, ora non ricordo ...

  9. #9
    Originariamente inviato da !!\Freedom9/!!
    Bella domanda!
    Onestamente non saprei ancora come fare. Se hai già un'idea su come potrei operare ti prego di dirmelo.
    Veramente l'ho scritto sopra...

  10. #10
    Onestamente credo che ti convenga seguire il consiglio di k.b che è quello più pulito.

    Dovresti approfondire un po l'URL rewrite, e quindi il file .htaccess.

    per "pulire" il nome azienda puoi crearti una funzione che trovi le occorrenze dei caratteri speciali e degli spazi e le sostituisca con dei '-'.

    Se proprio ti costa tanto approfondire il tema url rewrite quando fai l'INSERT dell'azienda inserisci nella tabella dell'azienda anche un campo che contenga il nome dell'azienda "pulito" con i trattini al posto dei caratteri speciali e quindi oltre all'id puoi inserire

    result.php?id_azienda=id&nome_convert=azienda-con-trattini

    e quindi query SELECT .... WHERE id=id e nome convertito=azienda-con-trattini

    Spero di essere stato abbastanza lineare e chiaro
    www.clickeweb.com Realizzazione siti web

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.