link che invia dati POST a file.php

  • Creatore Discussione Creatore Discussione zighy
  • Data di inizio Data di inizio

zighy

Utente Attivo
20 Gen 2012
96
0
0
Buongiorno a tutti,
come da titolo ho bisogno del comando che mi permetta cliccando su un link di inviare dei dati a un file php.
So che è possibile, una volta avevo una cosa del genere ma non riesco piu' a trovare qualcosa che funzioni e sia chiaro in rete.
Non era una funzione ma un semplice codice javascript da inserire nel tag <a>.
Qualcuno puo' aiutarmi?Grazie.
 
Ciao, i dati li hai in un form? in pratica vorresti fare il submit con un link?
Codice:
<form id="form" method="post" action="pagina.php">
    <input type="hidden" name="dato" value="dato"/>    
</form>
<a href="javascript:document.getElementById('form').submit()">invia</a>
 
No cosi non fa altro che inviare un dato hidden, in pratica sostituisce il pulsante. Io vorrei che a secondo del link sul quele clicco il valore del link sia preso come dato post.
 
Se ho capito bene, tu vuoi che il link funzioni normalmente ma allo stesso tempo che venga inviato ad una pagina php che ne registri il click
l'unico modo che conosco è usando ajax, per farlo in una sola riga di codice bisognerà includere la libreria jquery
HTML:
<script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
<a href="https://www.mrw.it" onclick="$.post('pagina.php',{link:$(this).attr('href')})">clicca</a>
nella pagina php lo recuperi normalmente
PHP:
$link = $_POST['link'];
 
Hai capito perfettamente, e quello che mi hai mostrato sopra dovrebbe andare.. ma c è bisogno comunque di un form? Cosi com'è non mi pare funzionare... :crying:
 
no funziona cosi come te l'ho postato
l'ho testato scrivendo in pagina.php semplicemente questo
PHP:
<?php

$file = "file.txt";
$fr = fopen($file, 'a');
fwrite($fr, $_REQUEST['link']);
fclose($fr);
?>
giusto per vedere se arrivava il dato l'ho trascritto in un file di testo
 
Scusa ma, ho provato anch'io come hai fatto tu e nel file di txt mi risulta ''https://www.mrw.it'', cioè l'href ,io vorrei passare come dato ''clicca''.. prendendo come esempio il tuo codice.
 
basta cambiare
Codice:
$(this).attr('href')
con
Codice:
$(this).text()
 
Tecnicamente è perfetto.. praticamente non so perchè $link = $_POST['link']; non lo prende come variabile e quindi non posso usare $link in una query.. controllero' meglio ma mi sembre che il resto sia tutto ok quindi.. mistero
 

Discussioni simili