Visualizzazione risultati 1 fino 13 di 13

Discussione: Estrazione Valori Database sql con php

  1. #1
    Guest

    Predefinito Estrazione Valori Database sql con php

    Ciao a tutti, ho un problema che sembra semplice da risolvere, ma a quanto pare non lo è... premetto che di php non ci capisco moltissimo, sono ancora alle primissime armi..
    Quindi, qualche giorno fa ho pensato a come automatizzare una cosa che di solito faccio manualmente e mi è venuto in mente il php visto che ho da poco iniziato a studiare il linguaggio...

    Quello che dovrei fare è semplice...

    Ho un form in html di questo tipo

    Codice HTML:
    <form name="Estrai Valore" action="script.php" method="Post">
          <input type="text" name="uid" value="uid">
          <input type="submit" name="Estrai" value="Estrai">
    </form>
    In questo form inserisco un valore che io conosco (uid) che si trova nel campo uid di una tabella su un database...

    e lo mando al file script.php che è così strutturato:

    Codice PHP:
    <?php

    $conn
    = mysql_connect("localhost","xxx","yyy");

    $db = 'xxx';

    mysql_select_db($db,$conn);

    if(isset(
    $_POST['Estrai']))

    $link = "www.link.it/link";
    $var_a = $_POST['uid'];
    $src = mysql_query("SELECT id FROM `x_world` WHERE uid = ".$var_a");
    while(
    $rs =mysql_fetch_array($src))

    {
    echo "'<br>'
    .$link.$rs['uid']";
    }
    ?>
    Quello che vorrei ottenere è uno o più link aventi una prima parte fissa,
    quindi $link = "www.link.it/link";
    e come parte finale il valore o i valori che mi restituisce la query che mando al db...
    quindi link di questo tipo:


    www.link.it/link123456 ------->> risultato query
    www.link.it/link132654 ------->> risultato query

    e così via...
    Ma il codice che ho scritto non funziona... ho fatto un casino mi sa?

    Mi potete aiutare?

    Grazie :)
    Ultima modifica di dreadnaut : 05-03-2012 alle ore 18.56.30 Motivo: + tag [html] e [php]

  2. #2
    L'avatar di dreadnaut
    dreadnaut non è connesso Super Moderatore
    Data registrazione
    22-02-2004
    Messaggi
    6,269

    Predefinito

    Almeno un problema è qua:
    Codice PHP:
    echo "'<br>'.$link.$rs['uid']";
    Stai mettendo assieme delle stringhe dentro un'altra stringa.

    Codice PHP:
    echo '<br>' . $link . $rs['uid'];
    Hai un editor che faccia la colorazione della sintassi, vero?

    Poi, un if la cui condizione è soddisfatta esegue solo l'istruzione seguente, oppure il blocco { ... } che lo segue. Nel tuo codice c'è un po' di confusione a riguardo

    Dando solo una ripulita alla sintassi:
    Codice PHP:
    <?php

    $conn
    = mysql_connect('localhost', 'xxx', 'yyy');

    $db = 'xxx';
    mysql_select_db($db, $conn);

    if ( isset(
    $_POST['Estrai']) )
    {
    $link = 'www.link.it/link';

    // assicuriamoci di non mettere "spazzatura" dentro la query
    $var_a = mysql_real_escape_string($_POST['uid']);

    // questa query estrare solo la colonna `id` —se le vuoi tutte usa *
    $src = mysql_query("SELECT `id` FROM `x_world` WHERE `uid` = '{$var_a}' ");

    // mysql_fetch_array ritorna un array con indici numerici, la prima colonna è $rs[0]
    while ( $rs = mysql_fetch_array($src) )
    echo
    '<br>' . $link . $rs[0];

    }
    ?>
    Ultima modifica di dreadnaut : 05-03-2012 alle ore 19.06.58

  3. #3
    Guest

    Thumbs up

    Funzionaaaaaaaaaaaaa!!!!!!!!!!!!!!!!!.............

    Cioè, 1 settimana che cerco una soluzione e tu in 3 secondi mi hai risolto tutto... ahahahahahahah

    Sono proprio un niubbo.....

    Grazieeeeeeeeeeee

    ps: quindi se ho qualche altra domanda posso passare ancora da qui?
    Come ti dicevo sono alle prime armi, quindi faccio casini facilmente...

    Grazie :)

    edit:

    Dimenticavo... utilizzo notepad++, quindi si, mi evidenzia il codice...

    Ma perchè i link generati non sono iperlink?
    è normale?

    Grazie :)
    Ultima modifica di dreadnaut : 05-03-2012 alle ore 20.35.43 Motivo: usa il tasto Edita ---->

  4. #4
    L'avatar di dreadnaut
    dreadnaut non è connesso Super Moderatore
    Data registrazione
    22-02-2004
    Messaggi
    6,269

    Predefinito

    Citazione Originalmente inviato da siriani Visualizza messaggio
    Ma perchè i link generati non sono iperlink?
    Si, è normale: quello è solo testo, non un link. Per ottenere un link cliccabile devi stampare un tag html <a>, e.g.

    Codice HTML:
    <a href="http://sito.com/">vai a sito.com</a>

  5. #5
    Guest

    Predefinito

    No aspè, allora mi sono perso....
    Dove lo inserisco il tag?

  6. #6
    L'avatar di dreadnaut
    dreadnaut non è connesso Super Moderatore
    Data registrazione
    22-02-2004
    Messaggi
    6,269

    Predefinito

    Lo stampi con echo, esattamente come ora stampi <br> e poi il testo del link.

  7. #7
    Guest

    Predefinito

    Ehm...

  8. #8
    Guest

    Predefinito

    Modifica:
    Codice PHP:
    echo '<br>' . $link . $rs[0];
    in:
    Codice PHP:
    echo '<br><a href="' . $link . $rs[0] . '" target="_blank">' . $link . $rs[0] . '</a>';

  9. #9
    Guest

    Predefinito

    Ah ok.... scusa ma non avevo ben capito..

    Grazie :)

  10. #10
    Guest

    Predefinito

    Quindi, adesso funziona tutto come volevo...
    Ma come si dice, l'appetito vien mangiando.... se ad esempio volessi usare un'intestazione per ogni serie di link, come potrei fare?
    Vorrei avere una cosa del genere

    Intestazione ( campo estratto dalla tabella )
    link1
    link2
    link3
    etc...

    Avevo pensato di fare una cosa del genere...


    Codice PHP:
    {
    $link = 'miolink';

    // assicuriamoci di non mettere "spazzatura" dentro la query
    $var_a = mysql_real_escape_string($_POST['uid']);

    // questa query estrare solo la colonna `id` —se le vuoi tutte usa *

    $src = mysql_query("SELECT `id` FROM `mia-tabella` WHERE `uid` = '{$var_a}' ");

    // questa è la nuova variabile che estrae il campo intestazione

    $intestazione = mysql_query("SELECT `intestazione` FROM `mia-tabella` WHERE `uid` = '{$var_a}' ");


    // mysql_fetch_array ritorna un array con indici numerici, la prima colonna è $rs[0]
    while ( $rs = mysql_fetch_array($src) )

    // mostra intestazione
    echo $intestazione;

    // mostra concatenazione variabili
    echo '<br><a href="' . $link . $rs[0] . '" target="_blank">' . $link . $rs[0] . '</a>';

    }
    Ma non funziona così... perchè?

    Grazie

  11. #11
    Guest

    Predefinito

    Nessuno sa dirmi dove sbaglio?

    Grazie :)

  12. #12
    Guest

    Predefinito

    Posta il codice completo.


  13. #13
    Guest

    Predefinito

    é già completo... mancherebbe solo il form che è il seguente

    Codice:
    <form name="test" action="mioscript2.php" method="Post">
          <input type="text" name="uid" value="uid">
          <input type="submit" name="Salva" value="Salva">
    </form>
    e poi quello che ho postato.

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •