PHP podsjetnik

poruka: 5
|
čitano: 1.528
|
moderatori: XXX-Man, vincimus
1
+/- sve poruke
ravni prikaz
starije poruke gore
14 godina
neaktivan
offline
Php podsjetnik

Pozdrav!
Našao sam na internetu php skripte za email podsjetnik. Prilagodio sam ih sebi i dodao login da ne može svatko dodavati podsjetnike (korisnik se logira sa email i password). Sad sam stao na tome da kad se netko logira treba prikazati samo njegove podsjetnike odnosno da query izlista samo podsjetnike u kojima je email korisnika koji se ulogirao.
Baza se sastoji od tablica login i reminder.
Ovo su skripte:

index.php

[code]

<table width="300" border="0" align="center" cellpadding="0" cellspacing="1" bgcolor="#CCCCCC">
<tr>
<form name="form1" method="post" action="checklogin.php">


<td>
<table width="100%" border="0" cellpadding="3" cellspacing="1" bgcolor="#FFFFFF">
<tr>
<td colspan="3"><strong>Prijava </strong></td>
</tr>
<tr>
<td width="78">Email</td>
<td width="6">:</td>
<td width="294"><input name="Email" type="text" id="Email"></td>
</tr>
<tr>
<td>Password</td>
<td>:</td>
<td><input name="password" type="password" id="password"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td><input type="submit" name="Submit" value="Login"></td>
</tr>
</table>
</td>
</form>
</tr>
</table>

[/code]

 

checklogin.php

[code]

<?php

$host="localhost"; // Host name

$username=""; // Mysql username

$password=""; // Mysql password

$db_name=""; // Database name

$tbl_name=""; // Table name



// Connect to server and select databse.

mysql_connect("$host", "$username", "$password")or die("cannot connect");

mysql_select_db("$db_name")or die("cannot select DB");



// username and password sent from form

$Email=$_POST['Email'];

$password=$_POST['password'];



// To protect MySQL injection (more detail about MySQL injection)

$Email = stripslashes($Email);

$password = stripslashes($password);

$Email = mysql_real_escape_string($Email);

$password = mysql_real_escape_string($password);



$sql="SELECT * FROM $tbl_name WHERE Email='$Email' and password='$password'";

$result=mysql_query($sql);



// Mysql_num_row is counting table row

$count=mysql_num_rows($result);

// If result matched $Email and $mypassword, table row must be 1 row



if($count==1){



session_register("Email");

session_register("password");

header("location:reminder_list.php");

}

else {

echo "Pogresan Email ili Password";

}

?>

[/code]

 

reminder_list.php

 

[code]

<?php

session_start();
// Check for the session value.
if(!session_is_registered(Email)){
header("location:index.php");
}
include('database.inc.php'); // Our database connectivity file

if( empty($_GET['Email']) )

{
?>

<html>

<head><title>Lista podsjetnika</title></head>

<body>

<table width="90%" border="0" align="center">



<tr>

<td colspan='3'><a href='reminder_setup.php'>Dodaj podsjetnik</a></td>

</tr>
<tr>

<td colspan='6'><a href='logout.php'>Logout</a></td>

</tr>

<?php

$result = mysql_query( "SELECT * FROM reminder_events");

$nr = mysql_num_rows( $result );

if(empty($nr))

{

echo("

<tr>

<td colspan='3'>Nema podsjetnika</td>

</tr>

");

}

while( $row = mysql_fetch_array( $result ))

{

$Email=$row["Email"];

$reminder_name = $row["reminder_name"];
$reminder_desc = $row["reminder_desc"];

$reminder_date = $row["reminder_year"]."-".$row["reminder_month"]."-".$row["reminder_date"];

$reminder_id = $row["reminder_id"];

echo("

<tr>

<td width='20%'>$reminder_name</td>
<td width='60%'>$reminder_desc</td>

<td width='10%'>$reminder_date</td>

<td width='10%'><a href='reminder_list.php?reminder_id=$reminder_id'>delete</a></td>

</tr>

");

}

mysql_free_result( $result );

?>

</table>

</body>

</html>

<?php

}

else

{

mysql_query( "DELETE FROM reminder_events WHERE reminder_id='".addslashes($_GET['reminder_id'])."'" );

// Let's go back to the Reminder List page

Header("Refresh: 1;url=reminder_list.php");

echo <<< _HTML_END_

Reminder Deleted, redirecting...

_HTML_END_;

}

?>

[/code]

hvala!

Poruka je uređivana zadnji put sub 29.1.2011 19:37 (vektra112).
 
0 0 hvala 0
15 godina
neaktivan
offline
Php podsjetnik

Stavi kada netko dodaje podsjetnike, da se osim naslova, teksta, vremena podsjetnika u bazu stavlja i user od korisnika koji ga je stavio, i onda jednostavno kada se korisnik ulogira u sustav, napravi se SQL upit sa SELECT * FROM podsjetnici WHERE korisnik='user_od_prijavljenog_korisnika'.

 
1 0 hvala 0
14 godina
neaktivan
offline
RE: Php podsjetnik

Stavio sam to samo nije user nego Email jer se sa emailom logira ali je problem što ne znam kako u upit stavit 'Email od prijavljenog korisnika'.

 

reminder_setup.php

 

<?php
session_start();
if(!session_is_registered(Email)){
header("location:index.php");
}
include('database.inc.php'); // Our database connectivity file
if($_POST['step'] != '1')
{
?>
<html>
<head><title>Dodaj podsjetnik</title></head>
<body>
<form name="setup_reminder" action="reminder_setup.php" method="post">
<table border='0' align='center'>
<tr>
<td>Dogadjaj:</td>
<td>
<input name="reminder_name" type="text" maxlength="255" />
</td>
</tr>
<tr>
<td>Email:</td>
<td>
<input name="Email" type="text" maxlength="65" />
</td>
</tr>
<tr>
<td>Opis</td>
<td>
<textarea name="reminder_desc" rows="5" /></textarea>
</td>
</tr>
<tr>
<td>Datum</td>
<td>
<select name="reminder_year">
<?php
$current_year = date("Y");
for($counter=$current_year;$counter<=$current_year+2;$counter++)
{
echo("\n<option>$counter</option>");
}
?>
</select>
<select name="reminder_month">
<?php
for($counter=1;$counter<=12;$counter++)
{
if($counter < 10)
$prefix = "0";
else
$prefix = "";
echo("\n<option>$prefix$counter</option>");
}
?>
</select>
<select name="reminder_date">
<?php
for($counter=1;$counter<=31;$counter++)
{
if($counter < 10)
$prefix = "0";
else
$prefix="";
echo("\n<option>$prefix$counter</option>");
}
?>
</select>
</td>
</tr>
<tr>
<td> </td>
<td>
<input name="step" type="hidden" value="1" />
<input name="submit" type="submit" value="add" />
</td>
</tr>
</table>
</form>
</body>
</html>
<?php
}
else
{
$error_list = "";
$todays_date = date( "Ymd" );
$reminder_date = $_POST['reminder_year'].$_POST['reminder_month'].$_POST['reminder_date'];
if( empty($_POST['reminder_name']) )
$error_list .= "No Reminder Name<br />";
if( !checkdate( $_POST['reminder_month'], $_POST['reminder_date'], $_POST['reminder_year'] ))
$error_list .= "Reminder Date is invalid<br />";
else if( $reminder_date <= $todays_date )
$error_list .= "Reminder Date is not a future date<br />";
if( empty( $error_list ) )
{
// No error let's add the entry
mysql_query( "INSERT INTO reminder_events(reminder_name,Email,reminder_desc,reminder_date) VALUES('".addslashes($_POST['reminder_name'])."','".addslashes($_POST['Email'])."','".addslashes($_POST['reminder_desc'])."', '".addslashes($reminder_date)."')" );
// Let's go to the Reminder List page
Header("Refresh: 1;url=reminder_list.php");
echo <<< _HTML_END_
Reminder Added, redirecting ...
_HTML_END_;
}
else
{
// Error occurred let's notify it
echo( $error_list );
}
}
?>

 

16 godina
neaktivan
offline
PHP podsjetnik

Dodaj u bazi podataka u obe tablice po još jedno polje i nazovi ga email_id ili korisnik_id. Atribute mu postavi na NotNull, AutoIncrement(true) i PrimaryKey(true). I u PHP kodu vadi podatke iz baze gdje je email_id(nekog podsjetnika) jednak emailu prijavljenog korisnika. Znači, trebaš napraviti relacije između dviju tablica. Ovdje imaš tutorijal o SQL relacijama.

http://bit.ly/fEJAtE
Moj PC  
0 0 hvala 0
14 godina
neaktivan
offline
PHP podsjetnik

Zahvaljujem svima!

 
0 0 hvala 0
1
Nova poruka
E-mail:
Lozinka:
 
vrh stranice