Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it L'avatar di Aires
    Registrato dal
    Jan 2010
    Messaggi
    725

    Problema Con Funzione (Pescaggio variabile)

    Ciao a tutti ho un problema con una funzione in php.

    Nella mia pagina ho una serie di righe che vengono stampate dopo l'esecuzione di una query e a fianco ad ogni riga un'immagine che quando viene cliccata permette la cancellazione della riga stessa, quindi quando clicco sull'immagine deve entrare in gioco una funzione nella quale viene eseguita una query di delete.

    Ecco i vari elementi:

    La query
    Codice PHP:
    $querymysql_query('Select * from tabella where id_linea='.$_GET['linea']) or die(mysql_error());
        
    $Num mysql_num_rows($query);
        echo 
    'Per la seguente linea sono state apportate '.$Num.' modifiche 
    '
    ;

     while (
    $dov mysql_fetch_array($query)) { 
    Poi nel ciclo while vengono stampati i vari dati
    Codice PHP:
                <input type="text" name="idmodifica"     value="<?=$dov['id_modifica'];?>">
    Id Linea:[/b]<input type="text" style="width: 30px;"  value="<?=$dov['id_linea'];?>">
    Data:    [/b]<input type="text" style="width: 80px;"   value="<?=$dov['data'];?>"></td>
    Il risultato sarà:
    codice:
    X -200 - Id linea: 105 - Data: 2010-01-01
    X - 201 - Id linea: 465 - Data: 2010-06-03
    ...
    Con la X indico il pulsante da premere per cancellare la linea, quindi a me serve sviluppare la funzione in php che permette la cancellazione.

    Avevo pensato a una cosa simile:
    Codice PHP:
    function EliminaModifica() {
       
    mysql_query("DELETE FROM tabella WHERE id_linea = '".mysql_real_escape_string($dov['id_modifica'])."'");

    Ora la lista dei problemi:
    1. Ho provato a fare la funzione sia con sia senza un valore nella parentesi
    2. Nella parte in php devo mettere function EliminaModifica() oppure function EliminaModifica(valore)? Se si quale valore? La parte dell'onclick dovrebbe essere così se non sbaglio. Grazie mille.

  2. #2
    dunque, mi sa che hai un po' di confusione in testa.
    Se vuoi usare una funzione e passarle una variabile (che non sia globale) la metti tra parentesi:
    Codice PHP:
    function presentazione($nome$cognome)
    {
       echo 
    "Il mio nome è $cognome$nome $cognome!";

    Se non metti la variabile tra parentesi nella dichiarazione otterrai "Il mio nome è ,!".
    Se non metti la variabile tra parentesi quando usi la funzione otterrai un errore
    Se usi la funzione così
    Codice PHP:
    presentazione("James""Bond"); 
    otterrai "Il mio nome è Bond, James Bond!".

    Detto questo, per fare quello che vuoi fare tu ci sono sostanzialmente due modi. Il più semplice è quello di creare un link per l'immagine con la X ad una pagina tipo "cancella.php" e passargli il valore della riga, in modo che l'indirizzo sia: "www.tuosito.com/cancella.php?rigadaeliminare=123".
    Per fare questo basta che, nel momento in cui stampi le varie righe, crei dinamicamente anche il link. Non ho tuo codice, ma supponendo che tu faccia tutto con un while la cosa sarà più o meno così:
    Codice PHP:
    while($dati mysql_fetch_array($lamiaquerycherecuperaivalori))
    {
      [...]

       echo 
    '[url="cancella.php?rigadaeliminare=' $dati['id_linea'] . '"]X[/url]';

      [...]

    Nella pagina cancella.php poi inserisci (eventualmente un controllo sulla variabile prima di eliminare la riga e) la funzione per cancellare la riga che, a questo punto, troverai nella variabile $_GET['rigadaeliminare']. Valuta se davvero ti serve una funzione a questo punto.

    E con questo dovresti aver risolto.

    Quello che vuoi fare tu, invece, dovresti farlo con Ajax, cioè un misto di PHP (che è un linguaggio LATO SERVER) e Javascript (che invece è LATO CLIENT/UTENTE). La cosa però si complica sensibilmente se non conosci l'interazione dei due linguaggi.

    Questa e' la mia firma! Lo so, e' una mezza schifezza.
    Un sito
    - skype non è per consulenze online -

  3. #3
    Utente di HTML.it L'avatar di Aires
    Registrato dal
    Jan 2010
    Messaggi
    725
    Grazie mille per la risposta, si purtroppo volevo provare il secondo metodo ma non avendo mai usato Ajax mi sa provo ad adattare il primo metodo, grazie infinite per l'aiuto

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.