Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    [php]: stampare contenuto array dentro una variabile

    Ho la necessità di farmi stampare il contenuto di un array dentro una variabile, come posso fare? è possibile?.

    Mi spiego meglio, ho una lista di titoli di films, i miei amici si collegano e spuntano quelli a cui sono interessati, fatto ciò cliccano su apposito pulsante per inviarmi una mail con i titoli che hanno scelto, ora il problema è che non riesco a farmi restituire tutti i titoli all'interno della variabile $messaggio che compone il body della mail.

    Spero di essere stato chiaro.


    Grazie,
    ciao.

  2. #2
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    forse intendi così ?

    $miavariabile = $mioarray["chiave"];


    :master:
    Vuoi aiutare la riforestazione responsabile?

    Iscriviti a Ecologi e inizia a rimuovere la tua impronta ecologica (30 alberi extra usando il referral)

  3. #3
    Scusami mi ero espresso un po' male, cmq ho modificato il messaggio iniziale.

  4. #4
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    ok. Un pò meglio. Inizia a postare il codice html dove c'e' il form e la pagina php dove raccogli i dati.

    Mi raccomando metti il tutto tra tag [ code ] e [ / code ]..
    Vuoi aiutare la riforestazione responsabile?

    Iscriviti a Ecologi e inizia a rimuovere la tua impronta ecologica (30 alberi extra usando il referral)

  5. #5
    Grazie.

    In questa pagina mi viene visualizzato l'elenco dei films che l'utente ha scelto, se tutto è corretto gli basta cliccare su continua per inviare la mail.
    codice:
    <table width="480" border="0" align="center" cellspacing="0" cellpadding="2">
     <tr>
      <td width="320" class="tit_bold1">Titolo del film</td>
      <td width="95" class="tit_bold1">Categoria</td>
      <td width="65" align="center" class="tit_bold1">Tipo disco</td>
     </tr>
     <form action="films_sendmail.php" name="confermaricfilms" method="post">
    <?php
    	include($config."ParamConnect.inc");
    
    	foreach ($_REQUEST['film'] as $id)
    	{
    		$sql = "SELECT * FROM films WHERE id = ".$id;
    		$rs = mysql_query($sql,$conn) or die($error_query . mysql_error());
    		while($record = mysql_fetch_array($rs))
    		{
    ?>
     <tr>
      <input type="hidden" name="tit_film[]" value="<?=$record['titolo']?>">
      <td valign="middle"><?=$record['titolo'];?></td>
      <td valign="middle" class="bord_film_ric"><?=$record['genere'];?></td>
      <td align="center" valign="middle" class="bord_film_ric"><?=$record['tipo_disco'];?></td>
     </tr>
    <?
    		}
    	}
    ?>
     <tr>
      <td colspan="3" align="center" valign="middle">
       <input type="button" onClick="javascript:history.back()" name="indietro" value="Torna indietro">
       <input type="submit" name="continua_richiesta" value="Continua">
      </td>
     </tr>
     </form>
    I titoli scelti vengono passati attraverso il tag hidden sotto forma di array:
    codice:
    <input type="hidden" name="tit_film[]" value="<?=$record['titolo']?>">
    Questa è la pagina dove viene generata l'email da inviarmi. Nella variabile $messaggio manca naturalmente la lista dei titoli che l'utente ha scelto in quanto non so come fare per farglieli stampare.
    codice:
    <?php
    	$mittente = $_COOKIE['login'];
    	$messaggio = "L'utente: $mittente ha richiesto i seguenti films:\n- ";
    
    	$mail_to = "xxx@xxx.it";
    	$mail_from = $mittente;
    	$mail_subject = "Richiesta films.";
    	$mail_body = $messaggio;
    
    	$mail_in_html  = "MIME-Version: 1.0\r\n";
    	$mail_in_html .= "Content-type: text/html; charset=iso-8859-1\r\n";
    	$mail_in_html .= "From: <$mail_from>";
    
    	if(mail($mail_to, $mail_subject, $mail_body, $mail_in_html))
    	{
    		header("Location: index.php?sez=films_conf_ric");
    		exit;
    	}
    ?>

  6. #6
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    Nella pagina per l'invio email

    codice:
    $titoli = $_POST['tit_film'];
    
    $messaggio = "L'utente: $mittente ha richiesto i seguenti films:\n- ";
    
    foreach ($titoli as $key => $value) {
       if (!is_null($value)) $messaggio .= $value . "\n";
    }
    in linea teorica dovrebbe funzionare...
    che ne dici?... Proviamo?
    Vuoi aiutare la riforestazione responsabile?

    Iscriviti a Ecologi e inizia a rimuovere la tua impronta ecologica (30 alberi extra usando il referral)

  7. #7
    Scusa se ti rispondo solo adesso ma ero uscito e sto vedendo solo ora la tua risposta.

    Il codice che mi hai inviato funziona alla perfezione, ti ringrazio tanto.

    Solo una cosa, poiché sono alle prime armi con il php, saresti ancora così gentile da spiegarmi cosa sta a significare

    codice:
    .=
    Che io sappia il punto serve da unione, ma associato all'uguale?


    Grazie ancora tante,
    ciao.

  8. #8
    Utente di HTML.it L'avatar di fabi080
    Registrato dal
    Mar 2002
    Messaggi
    442
    E' la sintassi abbreviata, sta per
    $messaggio = $messaggio . $value . "\n";

    vale per quasi tutti gli operatori, ad esempio se vuoi aggiungere 5 alla variabile $cont, invece di scrivere

    $cont = $cont + 5;

    puoi scrivere

    $cont += 5;

  9. #9
    Scusa se rispondo al posto suo ma magari faccio risparmiare tempo tra una risposta e l'altra

    Codice PHP:
    $variabile=$altro
    Sostituisce il testo (o il contneuto qualunque esso sia) contenuto nella variabile $altro al precedente contenuto della variabile $variabile

    Codice PHP:
    $variabile.=$altro 
    aggiunge il testo (o il contenuto) di $altro nella variabile $variabile, senza cancellarne il precedente contenuto.

    http://embracesblog.mine.nu
    http://wiki.ubuntu-it.org/AndreaOlivato

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.