Hier een nettere versie:
Maar maak van die VARCHAR(20) even een ENUM('nee','ja') met een standaardwaarde van 'nee'.
<?php
if ($_GET['show'] == 'add' || $_POST['show'] == 'add')
{
if ($_POST['titel'] && $_POST['msg'] && $_POST['mydate'] && $_POST['titel'])
{
if ($_POST['pdf'])
{
$pdf = 'ja';
}
else
{
$pdf = 'nee';
}
$sql = 'INSERT INTO almelo_nieuws (id, titel, msg, datum, intro, informail, pdf) VALUES (\'\', \'' . mysql_real_escape_string($_POST['titel']) . '\', \'' . mysql_real_escape_string($_POST['msg']) . '\', \'' . mysql_real_escape_string($_POST['mydate']) . '\', \'' . mysql_real_escape_string($_POST['intro']) . '\', \'' . mysql_real_escape_string($_POST['informail']) . '\', \'' . $pdf. '\')';
$res = mysql_query($sql);
if ($res)
{
if ($pdf=='ja')
{
$newname = 'pdf/' . mysql_isert_id() . '.pdf';
$res = move_uploaded_file($_FILES['myfile']['tmp_name'], $newname);
if ($res)
{
echo 'Het bericht is toegevoegd aan de site.';
}
else
{
echo 'Het bericht is toegevoegd aan de site maar de PDF niet.';
}
}
}
else
{
echo 'Het bericht is niet toegevoegd aan de site.';
}
}
else
{
if ($_POST['submit']){
$err = 'Enkele velden vergeten.';
}
if ($_POST['mydate']){
$cdate = $_POST['mydate'];
}
else
{
$cdate = date('Y-m-d');
}
$row['msg'] = nl2br($row['msg']);
echo '<br><b>Plaats hier uw nieuwsbericht:</b><br><br>';
echo '<form method="post" action="' . $PHP_SELF . '" name="formulier" onSubmit="return checkdate(this.mydate)" enctype="multipart/form-data">';
echo '<input type="hidden" name="show" value="add">';
echo 'Datum: <input type="text" size="15" maxlength="15" value="'. $cdate . '" name="mydate" id="nieuws_veld_datum"><br><br>';
echo '<img src="../img/icon_informail.jpg"> Nieuwsbericht opslaan als informail?<br>';
echo '<select name="informail" id="informail">';
echo '<option value="nee">nee</option>';
echo '<option value="ja">ja</option>';
echo '</select><br><br>';
echo 'Titel:<br>';
echo '<textarea name="titel" rows="2" cols="40" id="nieuws_veld_titel">' . $row['titel'] . '</textarea><br><br>';
echo 'Intro:<br>';
echo '<textarea name="intro" rows="4" cols="40" id="nieuws_veld_intro">' . $row['intro'] . '</textarea><br><br>';
echo 'Bericht:<br>';
echo '<textarea name="msg" rows="15" cols="40" id="nieuws_veld_tekst">' . $row['msg'] . '</textarea><br>';
echo 'PDF (zet een vinkje om up te loaden en te laten zien an de bezoeker):<br>';
echo '<input type="checkbox" name="pdf"> <input type="file" name="myfile">';
echo '<input type="submit" name="submit" value="toevoegen" id="nieuws_submit">';
echo '</form>';
}
}
?>
en dit zet je op de pagina waar het niews word opgehaald:
<?php
if ($pdf=='ja'){
echo 'Bekijk de PDF, klik <a href="pdf/' . $id . '.pdf">hier...</a>.';
}
?>
[edit]typo[/edit]
Link gekopieerd
ok heb ik gedaan.
ik krijg deze melding :
Fatal error: Call to undefined function: mysql_isert_id() in /home/users/kennmftp/kennistip.nl/almelo/beheer/pages/00nieuws.php on line 80
regel 80 bij mij is: $newname = 'pdf/' . mysql_isert_id() . '.pdf';
ik heb wel een map aangemaakt met pdf dus daar kan het volgens mij niet aan liggen?
Link gekopieerd
zo moettie. en die map moest
DACHT K 777 als chmod hebben, kwee nie
<?php
if ($_GET['show'] == 'add' || $_POST['show'] == 'add')
{
if ($_POST['titel'] && $_POST['msg'] && $_POST['mydate'] && $_POST['titel'])
{
if ($_POST['pdf'])
{
$pdf = 'ja';
}
else
{
$pdf = 'nee';
}
$sql = 'INSERT INTO almelo_nieuws (id, titel, msg, datum, intro, informail, pdf) VALUES (\'\', \'' . mysql_real_escape_string($_POST['titel']) . '\', \'' . mysql_real_escape_string($_POST['msg']) . '\', \'' . mysql_real_escape_string($_POST['mydate']) . '\', \'' . mysql_real_escape_string($_POST['intro']) . '\', \'' . mysql_real_escape_string($_POST['informail']) . '\', \'' . $pdf. '\')';
$res = mysql_query($sql);
if ($res)
{
if ($pdf=='ja')
{
$newname = 'pdf/' . mysql_insert_id() . '.pdf';
$res = move_uploaded_file($_FILES['myfile']['tmp_name'], $newname);
if ($res)
{
echo 'Het bericht is toegevoegd aan de site.';
}
else
{
echo 'Het bericht is toegevoegd aan de site maar de PDF niet.';
}
}
}
else
{
echo 'Het bericht is niet toegevoegd aan de site.';
}
}
else
{
if ($_POST['submit']){
$err = 'Enkele velden vergeten.';
}
if ($_POST['mydate']){
$cdate = $_POST['mydate'];
}
else
{
$cdate = date('Y-m-d');
}
$row['msg'] = nl2br($row['msg']);
echo '<br><b>Plaats hier uw nieuwsbericht:</b><br><br>';
echo '<form method="post" action="' . $PHP_SELF . '" name="formulier" onSubmit="return checkdate(this.mydate)" enctype="multipart/form-data">';
echo '<input type="hidden" name="show" value="add">';
echo 'Datum: <input type="text" size="15" maxlength="15" value="'. $cdate . '" name="mydate" id="nieuws_veld_datum"><br><br>';
echo '<img src="../img/icon_informail.jpg"> Nieuwsbericht opslaan als informail?<br>';
echo '<select name="informail" id="informail">';
echo '<option value="nee">nee</option>';
echo '<option value="ja">ja</option>';
echo '</select><br><br>';
echo 'Titel:<br>';
echo '<textarea name="titel" rows="2" cols="40" id="nieuws_veld_titel">' . $row['titel'] . '</textarea><br><br>';
echo 'Intro:<br>';
echo '<textarea name="intro" rows="4" cols="40" id="nieuws_veld_intro">' . $row['intro'] . '</textarea><br><br>';
echo 'Bericht:<br>';
echo '<textarea name="msg" rows="15" cols="40" id="nieuws_veld_tekst">' . $row['msg'] . '</textarea><br>';
echo 'PDF (zet een vinkje om up te loaden en te laten zien an de bezoeker):<br>';
echo '<input type="checkbox" name="pdf"> <input type="file" name="myfile">';
echo '<input type="submit" name="submit" value="toevoegen" id="nieuws_submit">';
echo '</form>';
}
}
?>
en dit zet je op de pagina waar het niews word opgehaald:
<?php
if ($pdf=='ja'){
echo 'Bekijk de PDF, klik <a href="pdf/' . $id . '.pdf">hier...</a>.';
}
?>
Link gekopieerd
jah het moet een 777 chmod map zijn anders heeft hij geen schrijf rechten!
Link gekopieerd
Mijn ftp-kennis is beperkt, maar volgens mij is chmod 777 zelden of nooit nodig en ALTIJD onverstandig. Daarmee geef je namelijk alles en iedereen onbeperkte toegang tot deze directory. Dat is vragen om problemen.
Link gekopieerd
ik ben er mee aan het rotzooien, het werkt volgens mij!
Link gekopieerd
heb alleen een vraag waarom het vinkje er tussen zit? is dat een soort beveiliging?
Link gekopieerd
ja in de code heeft jonathan een vinkje ingebouwd (waarschijnlijk met een doordachte reden die ik niet zie :P)
Link gekopieerd