Agenda op \datum\ bijwerken

Status
Niet open voor verdere reacties.

rene_overtoom

Meubilair
Lid geworden
1 jan 2001
Berichten
5.202
Hey PHP-ers,
Ik zal eerst eens de pagina leten zien waarover ik het heb :) http://www.reneovertoom.nl/~ce/index.htm
Je ziet daar rechts een menu, genaamd agenda. Dit is gewoon een losstaand frame, met een losstande php pagina. Deze pagina moet elke keer handmatig worden bijgewerkt in Dreamweaver.

Ik kan zeeeeeer weinig met PHP?mySQL dus ik hoop dat een van jullie experts me hierbij kan helpen, PCfixer?Chris?
Ik wil dus, dat er via een admin die data bijgewerkt kan worden, met de bestaande layout. Uiteraard moet de datum op goede volgorde liggen, zodat je precies kan zien wat, en wanneer.
Ik heb PHP en gebruik MySQL.
Kan iemand me helpen hiermee,hieraan ?
Grtz
Rene
 
Je bedoelt dus dat je een pagina wilt, waarin je de informatie kunt invoegen en dat al die info uit de database wordt gehaald en op de pagina wordt geplaatst...

Moet je ook nog iets hebben van laatste 10 berichten of moeten echt alle berichten geplaatst worden?

Ik ga wel even aan het werk...
 
Laatst bewerkt:
In weze alle berichten, en dat de admin de data die al zijn geweest zelf kan deleten. Dit moet een apart PHP bestand zijn omdat ik via phpinclude dan een password script kan toevoegen. Een extra password veld is dus niet nodig ;)
En ja, een invoegpagina voor de admin (dus de adminpagina)
en dan de pagina die alles laat zien, Alsjebliefd in de huidige layout als je dat kan, maar dat weet ik eigenlijk wel zeker :thumb:
Thx Chris !
 
Is het goed dat ik controleer op ip-adres voor de admin-pagina en het deleten van berichten?
 
Geplaatst door chrisgeerdink
Is het goed dat ik controleer op ip-adres voor de admin-pagina en het deleten van berichten?

Ehhh :s er zijn 4 admins, waarvan er nog 2 moeten inbellen :p en op school moet er ook toegevoegd kunnen worden. Als je van het wijzigen/toeveogen een aparte page maakt, dan is dat ruimschoots voldoende:thumb: dan kan ik ons huidige beveiligingsscript behouden !:)
Grtz
Rene
 
Dit is admin.php (zonder beveiliging). Hier kun je agendapunten toevoegen en verwijderen

Verander // Mysql connectie gegevens even naar je eigen gegevens
PHP:
<html>
<head>
<title>Admin</title>
</head>
<body>
<?php
if(IsSet($_POST['datum']))
{
// Mysql connectie gegevens
$query1 = mysql_query("SELECT id FROM agenda ORDER BY id DESC");
$array = mysql_fetch_assoc($query1);
$id = $array['id'] + 1;
$query2 = mysql_query("INSERT INTO agenda (id, datum, bericht) VALUES ('$id', '{$_POST['datum']}', '{$_POST['bericht']}')");
print("Agendapunt toegevoegd!");	
}

if(IsSet($_GET['del']))
{
$query3 = mysql_query("DELETE FROM agenda WHERE id='{$_GET['del']}'");
print("Agendapunt verwijderd!");
}

$query4 = mysql_query("SELECT * FROM agenda ORDER BY id DESC");
while($a = mysql_fetch_assoc($query4))
{
print($a['datum']."&lt;br>".$a['bericht']."&lt;br><a href=\"admin.php?del=".$a['id']."\">DELETE</a><p>");
}
?>
<form action="admin.php" method="post">
<table cellpadding="2">
<tr>
<td>Datum:
<td><input type="text" name="datum">
<tr>
<td>Bericht:
<td><input type="text" name="bericht">
<tr>
<td>
<td><input type="submit" value="Voeg agendapunt toe">
</table>
</body>
</html>

Dit is agenda.php. Hier worden de agendapunten geplaatst. Ik heb geprobeerd de lay-out te behouden.
Verander // Mysql connectie gegevens even naar je eigen gegevens
PHP:
<html>
<head>
<title>Belangrijk!</title>
<style fprolloverstyle>A:hover {color: #FF0099; font-family: Verdana; font-size: 9 pt}
</style>
</head>
<body link="#000000" vlink="#000000" alink="#000000">
<p><b><font face="Verdana" size="2">Agenda</font></b></p>
<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="AutoNumber1">
<?php

// Mysql connectie gegevens

$query = mysql_query("SELECT datum, bericht FROM agenda ORDER BY id DESC");
while($a = mysql_fetch_assoc($query))
{
print("<tr><td width=\"3%\" valign=\"top\"><b><font face=\"Arial\" color=\"#FF0099\" size=\"2\">►</font></b></td>");
print("<td width=\"97%\"><font face=\"Verdana\" style=\"font-size: 9pt\"><b>".$a['datum']."</b><br>");
print($a['bericht']."</font></td></tr>"); 
print("<tr><td width=\"3%\" valign=\"top\">&nbsp;</td>");
print("<td width=\"97%\"><font face=\"Verdana\" style=\"font-size: 9pt\">&nbsp;</font></td></tr>");
}
?>
</table>
</body>
</html>

Maak in je MySQL database even deze tabel aan:

CREATE TABLE `agenda` (
`id` int(255) NOT NULL default '0',
`datum` text NOT NULL,
`bericht` text NOT NULL,
) TYPE=MyISAM;

Ik heb het script nog niet getest, als er problemen zijn moet je dat maar even melden.
 
Laatst bewerkt:
MySQL retourneerde:


You have an error in your SQL syntax near ') TYPE=MyISAM' at line 1
Terug

:S
 
haal die laatste komma weg:

CREATE TABLE `agenda` (
`id` int(255) NOT NULL default '0',
`datum` text NOT NULL,
`bericht` text NOT NULL
) TYPE=MyISAM;

En mysql connectie:

mysql_connect('localhost', 'username', 'password');
mysql_select_db('database');

En de HTML hier wordt niet goed weergegeven, ik pas het even aan...
>> HTML is aangepast.
 
Laatst bewerkt:
Your the man !!
http://www.reneovertoom.nl/~ce/agenda.php
Het werkt perfect ! Alleen kun je missch nog een verandering aanbrengen, wat betreft het wijzigen? Stel dat de plaats behouden moet worden, alleen de tekst veranderd, bijgevoegd. Kun je het zo fixen dat er ook een "wijzigen" knop is ?

En ik krijg een vaag errortje bij de Admin
http://www.reneovertoom.nl/~ce/admin.php Hij werkt wel, maar geeft deze vage error :d
Thx !:thumb:
 
Vernieuwde admin.php

PHP:
<html>
<head>
<title>Admin</title>
</head>
<body>
<?php
// Mysql connectie gegevens

if(IsSet($_POST['datum']))
{
$query1 = mysql_query("SELECT id FROM agenda ORDER BY id DESC");
$array = mysql_fetch_array($query1, MYSQL_ASSOC);
$id = $array['id'] + 1;
$query2 = mysql_query("INSERT INTO agenda (id, datum, bericht) VALUES ('$id', '{$_POST['datum']}', '{$_POST['bericht']}')");
print("Agendapunt toegevoegd!");	
}

if(IsSet($_GET['del']))
{
$query3 = mysql_query("DELETE FROM agenda WHERE id='{$_GET['del']}'");
print("Agendapunt verwijderd!");
}

$query4 = mysql_query("SELECT * FROM agenda ORDER BY id DESC");
while($a = mysql_fetch_array($query4, MYSQL_ASSOC))
{
print($a['datum']."&lt;br>".$a['bericht']."&lt;br><a href=\"admin.php?del=".$a['id']."\">DELETE</a> - <a href=\"admin.php?wijzig=1&id=".$a['id']."\">Wijzig</a>");
}

if(IsSet($_GET['wijzig']))
{
$query5 = mysql_query("SELECT * FROM agenda WHERE id='{$_GET['id']}'");
$w = mysql_fetch_array($query5, MYSQL_ASSOC);
print("<form action=\"admin.php?change=1&id=".$_GET['id']."\" method=\"post\">");
}
else
	print("<form action=\"admin.php\" method=\"post\">");
	
if(IsSet($_GET['change']))
{
$query6 = mysql_query("UPDATE agenda SET datum='{$_POST['datum']}', bericht='{$_POST['bericht']}' WHERE id='{$_GET['id']}'");
print("Agendapunt gewijzigd!");
}
?>
<table cellpadding="2">
<tr>
<td>Datum:
<td><input type="text" name="datum" value="<? print($w['datum']);?>">
<tr>
<td>Bericht:
<td><input type="text" name="bericht" value="<? print($w['bericht']);?>">
<tr>
<td>
<td><input type="submit" value="Voeg agendapunt toe">
</table>
</body>
</html>
 
Laatst bewerkt:
Vaag :8-0: hij voegt hem wél toe, maar ik kan hem niet wijzigen :S
En ohja, je moet eerst iets toevoegen om iets te kunnen dellen of wijzigen, kun je hem ook meteen laten weergeven ?
Grtz !
Rene
 
Ik heb bovenstaande code aangepast. Kwam doordat je de mysql connectie gegevens helemaal bovenaan moet zetten.
 
Ik heb dat nou wel gedaan, alleen krijg nog steeds dezelfde fout :S

PHP:
$query4 = mysql_query("SELECT * FROM agenda ORDER BY id DESC");
Hier moet ie staan zegt de server.
 
Weet je zeker dat je de hele vernieuwde code hebt overgenomen? En dat de mysql gegevens helemaal bovenin moeten staan...
 
STOM!!!!! :rolleyes: :eek:
Ik heb je nieuwe code wél overgenomen, maar de AGENDA.php opnieuw geupload ipv ADMIN.php :( dan wil ik weer te snel zijn............:8-0:
Bedankt voor dit topwerk ! Ikzelf kan hem nu wel aanpassen met kleuren codes en verdere layout!
Thx!!:thumb:
 
Ey, wat ik nu zie :) de wijzig code werkt niet :(
Kun je daar als je tijd hebt nog ff naar kijken? Want als ik wil wijzigen maakt hij een nieuwe datum aan, ipv hem te veranderen. Er moet een soort van "update" code in als het lukt:thumb:
 
Ik heb de code inclusief layout hier

PHP:
<?php   

if (!isset($PHP_AUTH_USER))  
    {   
    header('WWW-Authenticate: Basic realm="Inloggen"');   
    header('HTTP/1.0 401 Unauthorized');   
    echo 'Alleen voor de <b>Administrator</b> van deze pagina!';   
    exit;   
    }  
elseif (isset($PHP_AUTH_USER))  
    {   
    if (($PHP_AUTH_USER != "***") || ($PHP_AUTH_PW != "***"))  
        {   
        header('WWW-Authenticate: Basic realm="Admin"');   
        header('HTTP/1.0 401 Unauthorized');   
        echo 'Om op de volgende pagina te komen, moet je ingelogd zijn!';   
        exit;   
        }  
    else  
        {   
        echo "";   
        } 
    }   

?> 

<html>
<head>
<title>Admin</title>
<style>
body {scrollbar-base-color: #FF0099;
scrollbar-face-color: #FFFFFF;
scrollbar-track-color: #FFFFFF;
scrollbar-arrow-color: #FF8330;
scrollbar-3dlight-color: #FFFFFF;
scrollbar-shadow-color: #FF0099;}
A:link {color: #FF8330; text-decoration:none;font-weight:bold; }
A:visited {color: #FF0099; text-decoration:none;font-weight:bold; }
A:active {color: #FF0099; text-decoration:none;font-weight:bold;}
A:hover {color: #FF0099;text-decoration:none;font-weight:bold}
</style>
</head>
<body>
<?php
// Mysql connectie gegevens
mysql_connect('localhost', '***', '***'); 
mysql_select_db('***'); 

if(IsSet($_POST['datum']))
{
$query1 = mysql_query("SELECT id FROM agenda ORDER BY id DESC");
$array = mysql_fetch_array($query1, MYSQL_ASSOC);
$id = $array['id'] + 1;
$query2 = mysql_query("INSERT INTO agenda (id, datum, bericht) VALUES ('$id', '{$_POST['datum']}', '{$_POST['bericht']}')");
print("<b><i><font face='Verdana' size='2' color='#FF0099'>Agendapunt toegevoegd!</font></i></b>");    
}

if(IsSet($_GET['del']))
{
$query3 = mysql_query("DELETE FROM agenda WHERE id='{$_GET['del']}'");
print("<b><i><font face='Verdana' size='2' color='#FF0099'>Agendapunt verwijderd!</font></i></b>");
}

$query4 = mysql_query("SELECT * FROM agenda ORDER BY id DESC");
while($a = mysql_fetch_array($query4, MYSQL_ASSOC))
{
print($a['datum']."<br>".$a['bericht']."<br><a href=\"agenda.php?del=".$a['id']."\">DELETE</a> - <a href=\"agenda.php?wijzig=1&id=".$a['id']."\">Wijzig</a>");
}

if(IsSet($_GET['wijzig']))
{
$query5 = mysql_query("SELECT * FROM agenda WHERE id='{$_GET['id']}'");
$w = mysql_fetch_array($query5, MYSQL_ASSOC);
print("<form action=\"agenda.php?change=1&id=".$_GET['id']."\" method=\"post\">");
}
else
    print("<form action=\"agenda.php\" method=\"post\">");
    
if(IsSet($_GET['change']))
{
$query6 = mysql_query("UPDATE agenda SET datum='{$_POST['datum']}', bericht='{$_POST['bericht']}' WHERE id='{$_GET['id']}'");
print("Agendapunt gewijzigd!");
}
?>
<table cellpadding="2">
<tr>
<td><b><font color='#FF8330' face='Verdana' size='2'><font face='Arial' color='#ff0099' size='2'>► </font>Datum:</b></font>
<td><input type="text" name="datum" style='border: 1px solid #FF0099; color:#FF0099; font-family:Verdana' size="20" value="<? print($w['datum']);?>">
<tr>
<td><b><font color='#FF8330' face='Verdana' size='2'><font face='Arial' color='#ff0099' size='2'>► </font>Bericht:</b></font>
<td><input type="text" name="bericht" style='border: 1px solid #FF0099; color:#FF0099; font-family:Verdana' size="20" value="<? print($w['bericht']);?>">
<tr>
<td>
<td><input type="submit" style='border:1px solid #FF8330; font-family: Verdana; font-size: 10 pt; color:#FF0099; background-color:#FFFFFF; font-weight:bold' tabindex='10' value="Voeg agendapunt toe">
</table>
</body>
</html>
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan