Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: Sähköpostipalvelu näyttää väärän lähettäjän ja väärän ajan

Paratiisin poika [08.05.2012 08:36:18]

#

Eli siis sähköpostipalveluni antaa esim viesteissäni läst.fm tiedotteen lähettäjäksi mikseri.netin (http://fpaste.dy.fi/55E). Veikkaisin ongelman olevan siinä, että jos yksi viesti poistetaan, niin tietojen id pysyy samana mutta viestin muuttuu tai päinvastoin tai jotenkin ihan muuten.

read.php

<?php
    include("includes/topinclude.php");
    session_start();
if(!isset($_SESSION["email"])) header("Location: login.php");

$email = $_SESSION["email"];
$password = $_SESSION["password"];

include("settings.php");
include("includes/top.php");

$MC = imap_check($mbox);

$result = imap_fetch_overview($mbox,"1:{$MC->Nmsgs}",0);
?>
<table border=1><tr><td>
<?php
     $num = $_GET["id"];

echo "L&auml;hett&auml;j&auml;: " . $result[intval($_GET["id"])]->from . "<br>\n";
echo "L&auml;hetetty: " . $result[intval($_GET["id"])]->date . "<hr>\n";


     if($num > 0) {
          echo imap_qprint(imap_body($mbox, $num));
     }


echo "</tr></td></table><br>";
include("includes/bottom.php");
?>

Grez [08.05.2012 09:08:48]

#

Tuon taulukon sekvenssinumero (jota käytät) on noutokertakohtainen. Käytä message_id:tä viittaamaan viestiin sivulatausten välillä. Mielestäni on myös älytöntä ladata esim. kaikki uudet viestit IMAPilla jos sivu näyttää vain yhden viestin.

Paratiisin poika [08.05.2012 11:09:48]

#

Miten toteutan sen, että se lataa vain yhden viestin? php.net:istä ei löytynyt tälläistä esimerkkiä. Ja message_id antaa jonku ihmetuloksen, kuten <20110306152030.81F748F777@mx1.viuhka.fi> niin miten tälläistä voi edes käyttää?

Grez [08.05.2012 23:33:30]

#

https://www.php.net/manual/en/function.imap-msgno.php

Paratiisin poika [09.05.2012 09:09:00]

#

Tein tuolla functiolla uusiksi koodia, mutta ei vieläkään toimi. veikkaan että vika on tässä rivissä

$result = imap_fetch_overview($mbox,"1:{$MC->Nmsgs}",0);

koko koodi

<?php
    include("includes/topinclude.php");
    include("includes/top.php");

      if(!isset($_SESSION["email"])) header("Location: login.php");

  $MC = imap_check($mbox);
  $result = imap_fetch_overview($mbox,"1:{$MC->Nmsgs}",0);
?>
<table border=1><tr><td>
<?php
  $num = $_GET["id"];

  $uid = imap_uid($mbox, $num);
  $id  = imap_msgno($mbox, $uid);

    echo "L&auml;hett&auml;j&auml;: " . $result[intval($id)]->from . "<br>\n";
    echo "L&auml;hetetty: " . $result[intval($id)]->date . "<hr>\n";


     if($num > 0) {
          echo imap_qprint(imap_body($mbox, $id));
     }

    echo "</tr></td></table><br>";


    include("includes/bottom.php");
?>

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta