webForumDet fria alternativet

lägga till medelanden...

PHP

2 svar · 226 visningar · startad av FunTrix

Medlem sedan okt. 2003118 inlägg
Frågan#1

hej, skulle vilja lägga till medelande på desa två sidor, i den första när man skickat ut lösenordet, då ska det stå skickat....
i den undre koden ändrat om det funkade och ej ändrat om det inte funkade....

<?
include "conn.php"; // Databasanslutningen
 
/* För felsökning avmarkera nedan rad */
/*error_reporting(E_ALL);*/
/* Slut felsökning */
 
/* Starta sessionen */
session_start();
/* slut sessionsstart */
?>
 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
 
<body>
<form name="form1" method="post" action="">
  <table width="61%"  border="0" cellspacing="0" cellpadding="0">
    <tr>
      <td>Skriv in din email s&aring; skickar vi dig ett nytt l&ouml;senord.</td>
    </tr>
    <tr>
      <td>
        <table width="100%"  border="0" cellspacing="0" cellpadding="0">
          <tr>
            <td>
              <?
            /* FORMS */
/* Start bygg formul&auml;r */
$form1="<form name=\"form1\" action=\"?id=13\" method=\"POST\">
<table width=\"150\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\" align=\"center\" style=\"border: 0px solid #000000\">
  <tr>
    <th align=\"center\">Epost:
    </th>
  </tr>
  <tr>
      <td><input type=\"text\" size=\"22\" name=\"epost\">
      </td>
  </tr>
  <tr>
      <td><input type=\"hidden\" name=\"skickat\" value=\"japp\">
      </td>
  </tr>   
  <tr>
      <td colspan=\"3\"align=\"center\"><input type=\"submit\" name=\"submit\" value=\"Skicka\">
   <input type=\"reset\" name=\"reset\" value=\"Rensa\">
      </td>
  </tr>
  </table>
    ";
/* Slut bygg formul&auml;r */
 
if (isset($_POST['skickat'])){
 
   // Tag bort eventuella blanksteg i b&ouml;rjan eller slutet
   foreach($_POST as $key => $val){
     $_POST[$key] = trim($val);
   }
 
$newpass=substr(MD5(mt_rand()),0,10); // Skapa ett nytt l&ouml;senord
 
/* SQL Fr&aring;gor */
$sql="SELECT epost from medlemmar WHERE epost='{$_POST['epost']}'";
$result = mysql_query($sql)or die("SQL: $sql <br>".mysql_error());
if (mysql_num_rows ($result) =="") {
     $reg_error[] = 1;
   }
 
   if (isset($reg_error)) {
echo "<font color=red>Epostadressen du uppgav:{$_POST['epost']}<br>
      finns inte registrerad till n&aring;gon anv&auml;ndare.<br>
      F&ouml;rs&ouml;k annars p&aring; nytt om du kanske skrev galet. <br>M.v.h admin<br></font>";
echo $form1;
exit;
   }
$epost=mysql_result($result, 0);
$sql2="UPDATE medlemmar set pass=MD5('$newpass') where epost='$epost'";
$result2 = mysql_query($sql2)or die("SQL: $sql2 <br>".mysql_error());
/* Slut SQL Fr&aring;gor */
 
 
 
 
 
 
/* Bygg mail f&ouml;r att skicka */
   $to   =$epost;
   $fromname='';   
   $fromemail="info@fa";
   
 
        $subject = "Beg&auml;ran om nytt l&ouml;senord!";
 
       $headers  = "MIME-Version: 1.0\r\n";
        $headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
   $headers .= "From:".$fromname."<".$fromemail.">\r\n";
        $headers .= "Reply-To: ".$fromname." <".$fromemail.">\r\n";
        $headers .= "Message-ID: <".md5(uniqid(time()))."@{$_SERVER['SERVER_NAME']}>\r\n";
        $headers .= "X-Sender: {$fromemail}\r\n";
        $headers .= "Return-Path: {$fromemail}\r\n";
        $headers .= "X-Mailer: Microsoft Office Outlook, Build 11.0.5510\r\n";
        $headers .= "X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1441\r\n";
   $message .= "\r\n";
$message .= "<html><left>
 
         <p>Du har beg&auml;rt ett nytt l&ouml;senord till , ditt nya l&ouml;senord &auml;r ".$newpass."
 
         <p>H&auml;lsningar
 
         <br> N&auml;r du loggat in s&aring; kan du byta l&ouml;senord till n&aring;got du enklare kommer ih&aring;g
 
         <p>
 
         M.v.h
 
         <br>admin       
 
         </html>";
      mail($to,$subject,$message,$headers);
      exit;
 
}
echo $form1;
?>
            </td>
          </tr>
      </table></td>
    </tr>
  </table>
</form>
</body>
</html>

medelande: ändra samt ej ändrat här:

<?php
session_start(); // Alltid överst på sidan
 
// Kolla om inloggad = sessionen satt
if (!isset($_SESSION['sess_user'])) {
   header("Location: login.php");
   exit;
}
 
?>
 
<?php
include "conn.php"; // Databasanslutningen
?>
 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
 
<body>
<table width="100%"  border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td>&Auml;ndra uppgifter f&ouml;r: <br>
      OBS efter du klickat p&aring; spara, var god klicka p&aring; dina uppgifter och kontrollera att de nya uppgifterna &auml;r inlagda p.g.a att de gamla uppgifterna st&aring;r kvar i textboxarna tills du har uppdaterat sidan. <br>
      <a href="dina_uppgifter.php">Dina uppgifter. </a> </td>
  </tr>
  <tr>
    <td>
      <?php       
              
         
           $hamta = "SELECT * FROM medlemmar WHERE id = ".$_SESSION['sess_id'];
           $resultat = mysql_query($hamta) or die("Det gick inte att h&auml;mta information fr&aring;n databasen!");
          
          
          
           while($rad = mysql_fetch_array($resultat))
           {
              echo '<tr><td>';
              echo '' . $rad["fornamn"] . '';
              echo '</tr></td><tr><td>';
              echo ''. $rad["efternamn"] . '';
                  echo '</tr></td>';
           }
          
           mysql_free_result($resultat);
          
           ?>
    </td>
  </tr>
  <tr>
    <td><?php
$sql = "SELECT * FROM medlemmar WHERE id = ".$_SESSION['sess_id'];
$result = mysql_query("$sql") or die("$sql funkade inte...");
while($rad = mysql_fetch_array($result))
{
echo '<form method="POST" action="?p=settings&do=spara"><input type="hidden" name="id" value="'.$_SESSION['sess_id'].'">
<font face="Verdana" size="1"><br>Adress:<br>
<input type="text" name="adress" value="'.$rad['adress'].'" size="20"><br>Postnummer:<br>
<input type="text" name="postnummer" value="'.$rad['postnummer'].'" size="20"><br>Ort:<br>
<input type="text" name="ort" value="'.$rad['ort'].'" size="20"><br>Land:<br>
<input type="text" name="land" value="'.$rad['land'].'" size="20"><br>Telefon:<br>
<input type="text" name="telefon" value="'.$rad['telefon'].'" size="20"><br>Epost:<br>
<input type="text" name="epost" value="'.$rad['epost'].'" size="20"><br><br><input type="submit" value="Spara &auml;ndringar"></form>';
}
 
if (isset($_GET['do']))
{
$sql = "UPDATE medlemmar
        SET adress = '".$_POST['adress']."',
        postnummer = '".$_POST['postnummer']."',
        ort = '".$_POST['ort']."',
        land = '".$_POST['land']."',
        telefon = '".$_POST['telefon']."',
        epost = '".$_POST['epost']."'
        WHERE id = ".$_SESSION['sess_id'];
// Och gl&ouml;m inte k&ouml;ra SQL-fr&aring;gan
mysql_query($sql) or die("SQL: $sql <br>".mysql_error());
   exit;
}
?></td>
  </tr>
</table>
</body>
</html>
Medlem sedan mars 20034 471 inlägg
#2

För att skriva ut något använder du echo, alltså:

echo "klar";
skriver ut klar i webbsidan.

Medlem sedan juni 20006 031 inlägg
#3

1

mail($to,$subject,$message,$headers);
exit;

ändras till

$ok = mail($to,$subject,$message,$headers);
if ($ok) {
	echo "Skickat";
} else {
	echo "Ej skickat";
}
exit;

2

mysql_query($sql) or die("SQL: $sql <br>".mysql_error());
exit;

ändras till

mysql_query($sql) or die("Ej ändrat<br>".mysql_error());
echo "Ändrat";
exit;

(Gjorde det lite enkelt för mig på 2:an ;) )

264 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
124 ms — deklarationer (db)
0 ms — hämta statistik (cache)
138 ms — hämta tråd, inlägg och bilagor (db)
121 ms — ändringar (db)