Newsgroup: it.comp.www.php
Titolo: alternative a inviare parametri con un link

Ciao, 
domanda niubba: 
conosco il modo di inviare valori dopo l'url, e raccoglierli con il
$_GET. 
Esistono altre maniere che possano essere raccolte con il $_POST,
escludendo l'utilizzo di un form? 
Chiedo questo perché volevo utilizzare la funzione header(), ma non
inserire i valori nell'url. 
grazie... 
m.

 inserire i valori nell'url.
Sessioni? Oppure ti serve proprio il $_POST (e perchè mai?)
Ludovico

> Sessioni? Oppure ti serve proprio il $_POST (e perchè mai?)
Perché le sessioni non le ho ancora capite :)

 Perché le sessioni non le ho ancora capite :)
cosa non hai capito?
start_session();
$_SESSION['variabile'] = 'valore da trasportare';
-- 
www.iuz-lab.info

 $_SESSION['variabile'] = 'valore da trasportare';
Ecco, ad esempio so che le sessioni usano i cookie, e che IE spesso
respinge i cookie (o, almeno, qualcuno lo respinge e qualcuno lo
accetta). Per cui non è controindicato l'uso delle sessioni?
ty
m.

Manaus wrote:

usano i cookie per passare il session id ma lo puoi passare anche tramite
_GET..
$SID = session_name() . '=' . session_id();
echo "<a href='altra_pagina_php.php?$SID'>link</a>";
-- 
www.iuz-lab.info

In scriptura diei Thu, 07 Oct 2004 20:31:07 GMT, Manaus scripsit:

Qualsiasi browser demanda all'utente (parlando in generale) la scelta di
abilitare o meno i cookie. Comunque le sessioni si possono usare anche
senza cookie session.use_cookies = 0 in php.ini I problemi eventualmente
sono altri.. Comunque il sistema di fare una POST senza usare moduli e/o
javascript c'è, usando curl..
questo chiama la pagina mod.php che si dovrebbe aspettare qualcosa in
$_POST['gino'] 
<?
$ch = curl_init();
curl_setopt ($ch, CURLOPT_URL, "
http://tuosito/mod.php
");
curl_setopt ($ch, CURLOPT_POST, 1);
curl_setopt ($ch, CURLOPT_POSTFIELDS, "gino=pino");
curl_exec($ch);
curl_close ($ch);
?>

 
č possibile anche attraverso la funzion fsockopen() (anche se č piů 
complesso delle funzioni curl).
http://freephp.html.it/articoli/view_articolo.asp?id=76
in pratica si tratta di dover inviare la richiesta http con gli header 
completi.
di buono ha che la funzione fsockopen() fa parte del core di php e non 
c'č bisogno di exension esterne
-- 
Spoken: How much is that gorilla in the window?
Take our advice, At any price, A gorilla like Magilla is mighty nice.
Gorilla, Magilla Gorilla for sale

 $_SESSION['variabile'] = 'valore da trasportare';
Ancora una cosina: come faccio a registrare il value dei moduli dentro 
le variabili di sessione, al click di un link?
Uso javascript?
Posso fare onClick="<? [function] registra() ?>"; ?
grazie!!
m.

Manaus wrote:

se per esempio scrivi un link
<a href='index.php?id=5'>link</a>
per registrare puoi fare un semplice
$_SESSION['id'] = $_GET['id'];
-- 
www.iuz-lab.info

 
Il problema è che i dati presenti nel modulo sono ancora temporanei, 
cioè non sono stati scritti nel database. Dovrei accodarli all'index.php 
probabilmente con javascript, ma non so come si faccia.
Ho provato a fare
<script>
document.write("<a href='index.php?giorno='+form.giorno.value");
</script>
Ma il codice viene generato al momento di caricamento, e quindi non 
passa i valori......
ty
m.

 Posso fare onClick="<? [function] registra() ?>"; ?
Un form e poi $_GET["nomevar"] o $_POST["nomevar"]
Ludovico

Manaus wrote:

memorizzali temporaneamente con una sessione oppure passali tra una pagina e
l'altra con un echo nel value degli input..
se posti un'pò di codice ti posso aiutare..
-- 
www.iuz-lab.info

 se posti un'pò di codice ti posso aiutare..
Molto gentile, ecco qua: 
La pagina dove compilo il modulo:
- - - 
<form name="notizia" action="inserimento_dati.php" method="post">
        <input type="text" name="titolo">
        <input type="text" name="testo">
        <input type="Submit" value="Invia">
        <a href="file_upload.php">Aggiungi un'immagine</a>
 
</form>
- - - 
e la pagina che raccoglie i valori temporanei (file_upload.php): 
- - - -
<? 
        if (isset($_GET['titolo'])) {
                $_SESSION['titolo'] = $_GET['titolo'];
                $_SESSION['testo'] = $_GET['testo'];
                }
        ?>
<form name="immagine" action="" enctype="multipart/form-data"
method="post">
        <input type="hidden" name="MAX_FILE_SIZE" value="30000">
        <input name="file" type="file">
        <input type="submit" value="Allega">
</form> 
- - - -
ciao!
m.

 La pagina dove compilo il modulo:
[..]
con alcune modifiche può diventare perfetta..
<?php
session_start();
if(isset($_POST['submit'])){
        if($_POST['submit'] == 'Aggiungi una immagine' OR $_POST['submit'] ==
'Invia'){
                $_SESSION['titolo'] = $_POST['titolo'];
                $_SESSION['testo'] = $_POST['testo'];
                echo "istruzioni che registrano le info ({$_POST['titolo']} -
{$_POST['testo']})<br />";
        }
        if($_POST['submit'] == 'Aggiungi una immagine'){
echo <<< EOF
<form action='{$_SERVER['PHP_SELF']}' enctype='multipart/form-data'
method='post'>
<input type='hidden' name='MAX_FILE_SIZE' value='30000'>
<input name='file' type='file'>
<input type='submit' name='submit' value='Allega'>
</form>
EOF;
        }
        if($_POST['submit'] == 'Allega'){
                echo "istruzioni per registrare l'immagine<br />";
        }
        echo "<a href='{$_SERVER['PHP_SELF']}'>Torna al form iniziale</a><br />";
}
else{
echo <<< EOF
<form action='{$_SERVER['PHP_SELF']}' method='post'>
Titolo: <input type='text' name='titolo'><br />
Testo: <input type='text' name='testo'><br />
<input type='submit' name='submit' value='Invia'>
<input type='submit' name='submit' value='Aggiungi una immagine'><br />
</form>
EOF;
}
?>
-- 
www.iuz-lab.info

> con alcune modifiche può diventare perfetta..
Aaahh quindi suggerisci di utilizzare un pulsante submit al posto del
link..... già mi sa che farò così.....   :)
grazie a te e buon w.e. a tutti!!
m.