Sistema di messaggi a

valient13

Utente Attivo
6 Apr 2012
96
0
0
Sicilia
Ho creato un sistema di messaggi privati, solo che quando arriva il messaggio invece dell'id mi dovrebbe comparire il nome, cioè dovrei trasformare l'id in nome del mittente vi posto il codice:

inviamessaggio.php (form)
PHP:
<?php include("header.php");
# inizializzazione della sessione
@session_start();
# inclusione del file di funzione
# istanza della classe
$obj = new Iscrizioni();
# identificativo univoco dell'utente
$id_utente = $_SESSION['id_utente'];
# chiamata al metodo per la verifica della sessione
if (!$obj->verifica_sessione())
{
  #redirect in caso di sessione non verificata
  @header("location:errore2.php");
}
?>
  <!-- Content -->
  <div id="content">
      <div id="conteiner">
      <div align="center">
      <h2>Messaggi</h2>
      <form name="messaggi" method="POST" action="invia.php"> 
      <p><b>ID <?php $obj->mostra_utente($id_utente); ?>:</b> <br />
      <input value="<?php echo $id_utente; ?>" class="tb11" name="mittente" readonly>
      <p><b>ID Destinatario:</b> <br />
      <input type="TEXT" class="tb11" name="destinatario"><br>
    <p><b>Messaggio:</b> <br />
    <textarea name="messaggio" class="tb10" rows="6" cols="20"></textarea><br>
    <input name="data" type="hidden" id="data" value="<?php print (date ("d/m/Y - H:i")); ?>" />
    <br>
    <button name="invia">Invia</button>
    </form>
    </div>
      </div>
    <?php include("sidebar.php"); ?>
  </div>
  
<?php include("footer.php"); ?>

invia.php
PHP:
<?php
include ("header.php");?>
 <!-- Content -->
  <div id="content">
      <div id="conteiner">
      <div align="center">
      <h2>Messaggi</h2>
<?php

include ("connessione.php");
$destinatario=$_POST['destinatario'];
$mittente=$_POST['mittente'];
$messaggio=$_POST['messaggio'];
$data=$_POST['data'];
$connessione = mysql_connect($hostname_connessione,$username_connessione,$password_connessione);
$database_select=mysql_select_db($database_connessione,$connessione);
//ci colleghiamo al database
$query="Insert into `messaggi` (`mittente`,`destinatario`,`messaggio`,`data`) VALUES ('$mittente','$destinatario','$messaggio','$data')";
$result=mysql_query($query,$connessione);
    if($result==1)
    echo"<b><font color=green>Messaggio inviato con successo</font></b>";
    else
    echo"<b><font color=red>Messaggio non inviato</font></b>";

?>
    </div>
      </div>
    <?php include("sidebar.php"); ?></div><?php include("footer.php"); ?>

ricevuti.php

PHP:
<?php
include ("header.php");
$id_utente = $_SESSION['id_utente'];
?>
 <!-- Content -->
  <div id="content">
      <div id="conteiner">
      <div align="center">
      <h2>Messaggi</h2>
      
<?php
include ("connessione.php");
    $destinatario=$id_utente;
    $query = "SELECT mittente,messaggio,data FROM messaggi WHERE destinatario='$destinatario' ORDER BY data DESC";
    $result = mysql_query( $query ) or die ("query errata");
        echo "<table style=\"border-collapse: collapse;\" width=\"100%\" border=\"1\"><tr><td style=\"text-align: center; font-weight: bold\" width=\"20%\">Mittente</td><td width=\"60%\" style=\"text-align: center; font-weight: bold\">Messaggio</td><td width=\"20%\" style=\"text-align: center; font-weight: bold\">Data</td></tr>";
        while ($row = mysql_fetch_row($result))
        {
            echo "<tr><td width=\"20%\" align=\"center\">".$row[0]."</td><td width=\"60%\">".$row[1]."</td><td width=\"20%\" align=\"center\" style=\"font-size: 13px;\">".$row[2]."</td></tr>";
        }
        echo "</table>";
  
    ?>
       </div>
      </div>
    <?php include("sidebar.php"); ?></div><?php include("footer.php"); ?>
 

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
26
Roma
alessandro1997.netsons.org
Dovrai modificare il while più o meno così:
PHP:
while ($row = mysql_fetch_assoc($result)) {
    $userSql = sprintf('SELECT * FROM utenti WHERE id = %d', $row['mittente']);
    $userResult = mysql_query($userSql) or die(mysql_error());
    $userRow = mysql_fetch_assoc($userResult);
    
    echo <<<EOF
<tr>
    <td width="20%" align="center">{$userRow['username']}</td>
    <td width="60%">{$row['messaggio']}</td>
    <td width="20%" style="font-size: 13px;">{$row['data']}</td>
</tr>
EOF;
}
 

valient13

Utente Attivo
6 Apr 2012
96
0
0
Sicilia
ho provato cosi:

PHP:
<?php
include ("header.php");
$id_utente = $_SESSION['id_utente'];
?>
 <!-- Content -->
  <div id="content">
  	<div id="conteiner">
  	<div align="center">
  	<h2>Messaggi Ricevuti</h2>
  	
<?php
include ("connessione.php");
    $destinatario=$id_utente;
    $query = "SELECT mittente,messaggio,data FROM messaggi WHERE destinatario='$destinatario' ORDER BY data DESC";
    $result = mysql_query( $query ) or die ("query errata");
        echo "<table style=\"border-collapse: collapse;\" width=\"100%\" border=\"1\"><tr><td style=\"text-align: center; font-weight: bold\" width=\"20%\">Mittente</td><td width=\"60%\" style=\"text-align: center; font-weight: bold\">Messaggio</td><td width=\"20%\" style=\"text-align: center; font-weight: bold\">Data</td></tr>";
        while ($row = mysql_fetch_row($result))
        {
            $userSql = sprintf('SELECT nome_reale FROM iscritti WHERE id_utente = %d', $row['mittente']);
    		$userResult = mysql_query($userSql) or die(mysql_error());
   			$userRow = mysql_fetch_assoc($userResult); 
            echo "<tr><td width=\"20%\" align=\"center\">".$userRow['nome_reale']."</td><td width=\"60%\">".$row[1]."</td><td width=\"20%\" align=\"center\" style=\"font-size: 13px;\">".$row[2]."</td></tr>";
        }
        echo "</table>";
  
    ?>
   	</div>
  	</div>
    <?php include("sidebar.php"); ?></div><?php include("footer.php"); ?>

ma mi da questo errore:
Notice: Undefined index: mittente in ...\www\.....\ricevuti.php on line 19

e non mi fà vedere i nome degli utenti nella tabella.
Forse mi sono spiegato male, io quando invio il messaggio salvo l'id che prendo nella mia sessione, l'id della persona a cui devo inviare il messaggio, il messaggio e la data.
La tabella è fatta cosi:
id mittente destinatario messaggio data
1 4 5 a ...

Io ora nel file ricevuti.php dovrei trasformare l'id del mittente in nome del mittente..
Grazie per l'aiuto
 
Ultima modifica:

Web Designer

Utente Attivo
17 Gen 2012
301
0
0
Ciao valient13,
ti prego in futuro di attendere una risposta senza avere fretta, poiuchè ognuno di noi si presta per questo fine volontariamente e gratuitamente.
Buona continuazione nel Forum Mr.Webmaster :D

EDIT: hai visto? Il buon SuperMod alessandro1997 ti ha puntualmente risposto.
 
Ultima modifica:
Discussioni simili
Autore Titolo Forum Risposte Data
F Sistema rilevazione presenze PHP 1
MarcoGrazia Sistema di news interno al sito PHP 3
T SSD - errore sistema Hardware 2
R Come creare sistema Add to homescreen PHP 3
L Sistema outdoor centralizzato IP Cam e Videosorveglianza 0
F Sistema di autenticazione e pagamento PHP 3
LDB Multimedia e Internet Offro sistema di affiliazione remunerato Offerte e Richieste di scambio links 0
R [PHP] Creare sistema random PHP 3
brasoft2019 [PHP] Sistema di gestione presenze PHP 29
L Trasferimento dei file OLM Mac in formato PST sul sistema Mac Mac e Software 1
S [Javascript] Verifica separatore decimale sistema operativo Javascript 2
felino Windows 8.1: installare sistema operativo e programmi in due hard disk diversi Windows e Software 4
M Esiste un sistema di video sorveglianza simile? IP Cam e Videosorveglianza 1
W [Javascript] Eseguire script residente nel sistema da html remota Javascript 0
W Piccolo sistema per gestire alcune periferiche, Java o altro linguaggio? Java 8
V [Visual Basic] ottenere info su sistema Visual Basic 1
E Consiglio sistema di videosorveglianza IP Cam e Videosorveglianza 0
P Sistema per identificare utente se proviene da apertura app android Sviluppo app per Android 3
M consiglio sistema di videosorveglianza IP Cam e Videosorveglianza 1
loois Ho un problema nella creazione di un sistema di commenti in PHP PHP 11
xone [MySQL] Comparazione data per sistema di prenotazioni MySQL 23
papayablu Calcolatore scommesse a sistema per Android? Smartphone e tablet 4
A Sistema di comunicazione visiva IP Cam e Videosorveglianza 0
N Sistema di Help di Delphi 7 non funziona su Win10 Windows e Software 0
R Sistema Operativo Windows e Software 1
MarcoGrazia [Javascript] Sistema di caricamento dinamico in base allo scrolling Javascript 3
S Sistema di iscrizione al mio sito PHP 1
F come creare un sistema ranking tra due tabelle (TOMBOLA/BINGO) PHP 8
D Sistema di videocamere alta qualita IP Cam e Videosorveglianza 1
E sistema di autenticazione PHP 4
R Sistema di conteggio (somma) HTML e CSS 4
felino Presentazione foto e sistema di votazione PHP 2
M "BOOTMGR is missing" - formattare HD di sistema Windows e Software 2
JackIlPazzo Sistema di login e registrazione avanzato PHP 1
M Sistema per gestione file. PHP 1
S Creare Sistema di API Request e Response libero e protetto PHP 7
Christian1977 Nuovo sistema operativo Android Smartphone e tablet 3
A File di sistema PHP 6
simonetta619 sistema operativo a 32 o a 64bit? Windows e Software 1
L [gratuito] cerco sistema news xml in php5 Offerte e Richieste di Lavoro e/o Collaborazione 1
L pdo e sistema crud PHP 1
P Sistema di consultazione orari PHP 2
A windows 8 - INTERRUZIONE IMPREVISTA SERVICES DI SISTEMA Windows e Software 0
Alessandro Le Mura Sistema votazione mysql - php a stelle PHP 3
C Sistema particolare di password PHP 5
F Sistema anti MySQLi Injection? PHP 6
P Script sistema rating PHP 0
E Sistema di login PHP 4
M PHP/MySQL: Sistema per trovare multiaccount PHP 7
L sistema utenti con classi PHP 9

Discussioni simili