?
Onbekende gebruiker
27-05-2009 17:19
Nou, als je die tutorials kent, dan zou je toch zien dat die code hierboven niet heel lekker is....
Link gekopieerd
Nogmaals, voor mij is dit ook een leerproces, omdat je wat tuts gelezen hebt (snap ik zelf nl ook wel) betekent niet meteen dat je kan phpen.... zoals het hier wel naar boven komt.
Ik vraag hier een beetje hulp, om me kennis en ervaring op te doen.
ik wil zoiezo de gehele code gaan doorlopen en "lekkerder" maken.
Maar wat ik zei, dit is voor mij gewoon een leer projectje.
En uit die tuts die jij me bijvoorbeeld gaf zitten basis elementen in en gaat er niet uitgebreid op door.....
//edit:
Al met al heb ik nog geen antwoord op mijn vraag......
Link gekopieerd
Ik denk dat dit moet werken:
<?php
if(is_numeric($_GET['max'])) $max = $_GET['max'];
if(is_numeric($_GET['start'])) $start = $_GET['start'];
if (empty($max)) $max = 5;
if (empty($start)) $start = 0;
$end = $start + $max;
$prev = $start - $max;
$next = $end;
$query = mysql_query("SELECT id,datum,bericht,titel FROM nieuws ORDER BY id DESC LIMIT $start, $max") or die (mysql_error());
$num = mysql_num_rows($query);
if (empty($num))
{
echo "<p>Er zijn geen nieuwsberichten.</p>";
}
else
{
echo "<table border=\"0px\" width=\"100%\" margin=\"o\" bgcolor=\"#dbdbdb\" >
<tr>
<td width=\"15px\"><input name=\"selectie\" type=\"checkbox\" value=\"selecteer\" /></td>
<td width=\"200px\">Datum:</td>
<td width=\"250px\">Titel:</td>
<td>Bericht:</td>
</tr>";
while ($result = mysql_fetch_array($query)) {
echo '<tr>
<td width="15px"><input name="selectie" type="checkbox[]" value="'.$result["id"].'" /></td>
<td width="200px"><span style="color:#000000;" ><font size="3" font color="#000000">'.$result["datum"].'</span></font></td>
<td width="250px">'.$result["titel"].'</td>
<td>'.$result["bericht].'</td>
</tr>';
}
echo '</table>';
}
?>
Link gekopieerd
Super, dank je !
Weer een stap verder,
Nu geeft ie in ieder geval geen error meer.
Maar nu ziet me lijstje er zo uit:
Datum: Titel: Bericht:
$result["datum"] $result["titel"] $result["bericht]
$result["datum"] $result["titel"] $result["bericht]
$result["datum"] $result["titel"] $result["bericht]
$result["datum"] $result["titel"] $result["bericht]
$result["datum"] $result["titel"] $result["bericht]
Hij neemt het dus letterlijk over ipv dat hij de data ophaalt.....
Plus dat me checkboxen nu heel lang zijn en je er nu text in kan voeren....
Iig een stap verder, kan alleen nu niet testen of de link ook werkt.....
// edit:
En mag ik je vragen waarom je bij het eerste stukje tabel de echo in dubbel quotes doet en het 2de stukje niet ?
Ik had hiervoor ook wat problemen maar er zit een verschil in opbouw dan toch ?
//edit2:
Ik heb de data op kunnen halen uit de database. Er zat een foutje in het script.
$result["datum"]
moest:
'.$result["datum"].'
worden.
Nu heb ik alleen nog een foutje met me checkbox.
Het ligt em waarschijnlijk aan de type die ik em meegeef nl: type="checkbox[]"
Hij geeft nu nl (zoals het lijkt) een text area weer... het ID staat er wel in, maar niet een checkboxje.....
Als ik hem verander in simpelweg checkbox dan is het opgelost, maar waarschijnlijk moet dat toch op een of andere manier anders.
Zit ik ook meteen met het volgende:
Er wordt aangegeven dat ik een link als deze moet maken om het werkende te krijgen:
<a href="index.php?set=nieuws&p=nieuws_bewerk&id=<?php echo $show["id"] ?>"><img src="images/submenu/bewerk.png" width="34" height="29" alt="Verwijder" border="0" /> Bewerk</a>
Ik heb het idee dat $show dan $result moet worden maar dan werkt het nog niet....
hoe zorg ik nou dat de link weet welke checkbox er aangevinkt is ?
Link gekopieerd
Probeer dit eens:
<?php
if(is_numeric($_GET['max'])) $max = $_GET['max'];
if(is_numeric($_GET['start'])) $start = $_GET['start'];
if (empty($max)) $max = 5;
if (empty($start)) $start = 0;
$end = $start + $max;
$prev = $start - $max;
$next = $end;
$query = mysql_query("SELECT id,datum,bericht,titel FROM nieuws ORDER BY id DESC LIMIT $start, $max") or die (mysql_error());
$num = mysql_num_rows($query);
if (empty($num))
{
echo "<p>Er zijn geen nieuwsberichten.</p>";
}
else
{
echo "<form name=\"bewerk\" action=\"index.php?set=nieuws&p=nieuws_bewerk\" method=\"GET\"><table border=\"0px\" width=\"100%\" margin=\"o\" bgcolor=\"#dbdbdb\" >
<tr>
<td width=\"15px\"><input name=\"selectie\" type=\"checkbox\" value=\"selecteer\" /></td>
<td width=\"200px\">Datum:</td>
<td width=\"250px\">Titel:</td>
<td>Bericht:</td>
</tr>";
while ($result = mysql_fetch_array($query)) {
echo '<tr><td width="15px"><input name="selectie" type="checkbox" name="id" value="'.$result["id"].'" /></td>
<td width="200px"><span style="color:#000000;" ><font size="3" font color="#000000">'.$result["datum"].'</span></font></td>
<td width="250px">'.$result["titel"].'</td>
<td>'.$result["bericht"].'</td>
</tr>';
}
echo '</table><br /><a href="#" onClick="bewerk.submit();"><img src="images/submenu/bewerk.png" width="34" height="29" alt="Verwijder" border="0" /> Bewerk</a>';
}
?>
Link gekopieerd
Dit werkt niet......
Op een of andere manier gaat ie naar de startpagina.
Zat te denken de volledige link te geven maar dan zit ik nog met het id die hij mee moet geven.....
Een andere oplossing ?
Link gekopieerd
Heb je msn?
Zal ik je via daar even helpen en direct uitleggen waarom je niet weet hoe deze functies werken.
Zoja stuur me maar even een bericht.
Mvg,
Tim Kampherbeek
Link gekopieerd
@ Thijn,
Zou dit niet eventueel met Javascript moeten ?
Gelieve Niet Bumpen:
Twee of meer keer achter elkaar in een topic posten heet bumpen. Bumpen is pas na 24 uur toegestaan en kan een reden zijn voor de admins en moderators om een topic te sluiten. Gebruik indien nodig de knop om je tekst aan te passen.
SanThe.
Sorry, vergeten ;)
Ik heb ondertussen het script aangepast, met tips van andere.
Er zit nog een foutje in.
Heb nu het deel voor het verwijderen gemaakt.
Maar hij verwijderd niets, laad alleen de pagina opnieuw......
Hier het scriptje:
<link rel="stylesheet" href="../../css/admin_style.css" type="text/css" />
<div class="submenu">
<div class="submenu_links">
<img src="images/submenu/nieuwsplaatje.png" width="40" height="40" alt="Nieuws" /><img src="images/submenu/text_admin_nieuws.png" width="166" height="40" alt="text" /></div>
<div class="submenu_rechts">
<div class="nieuw"><a href="index.php?set=nieuws&p=nieuws_nieuw"><img src="images/submenu/nieuw.png" width="34" height="29" alt="Nieuw" border="0" /><br />
Nieuw</a></div>
<div class="bewerk"><a href="#" onClick="document.getElementById('method').value = 'Edit', document.bewerk.submit();"><img src="images/submenu/bewerk.png" width="34" height="29" alt="Verwijder" border="0" /> Bewerk</a></div>
<div class="verwijder"><a href="#" onClick="document.getElementById('method').value = 'Del', document.bewerk.submit();"><img src="images/submenu/verwijder.png" width="34" height="40" alt="Verwijder" /></a></div>
<div class="annuleer"><a href="index.php?set=nieuws&p=nieuws"><img src="images/submenu/annuleer.png" width="41" height="29" alt="Annuleer" border="0" />
Annuleer</a></div>
</div>
</div>
<div class="inhoud_div">
<div class="uitlijning" align="left">
<?php
if ( isset($_POST['method']) && isset($_POST['edit']) ) {
$method = addslashes($_POST['method']);
if ( $method == 'Del' ) {
$done = implode(',', $_POST['edit']);
mysql_query ( "DELETE FROM nieuws WHERE id IN ($done)" );
echo '<META http-equiv="refresh" content="0; URL='.$_SERVER['REQUEST_URI'].'">';
}
echo 'Verwijderen';
}
if(is_numeric($_GET['max'])) $max = $_GET['max'];
if(is_numeric($_GET['start'])) $start = $_GET['start'];
if (empty($max)) $max = 5;
if (empty($start)) $start = 0;
$end = $start + $max;
$prev = $start - $max;
$next = $end;
$query = mysql_query("SELECT id,datum,bericht,titel FROM nieuws ORDER BY id DESC LIMIT $start, $max") or die (mysql_error());
$num = mysql_num_rows($query);
if (empty($num))
{ ?>
<p>Er zijn geen nieuwsberichten.</p>
<?php }
else
{ ?>
<form name="bewerk" action="" method="POST" id="bewerk">
<input type="hidden" name="method" id="method" value="0">
<table border="0px" width="100%" margin="o" bgcolor="#dbdbdb" >
<tr>
<td width="15px"><input name="selectie" type="checkbox" value="selecteer" /></td>
<td width="200px">Datum:</td>
<td width="250px">Titel:</td>
<td>Bericht:</td>
</tr>
<?php
while ($result = mysql_fetch_array($query)) { ?>
<tr>
<td width="15px"><input name="selectie" type="checkbox" name="edit[]" value="<?php echo $result["id"]; ?>" id="<?php echo $result["id"]; ?>" /></td>
<td width="200px"><span style="color:#000000;" ><font size="3" color="#000000"><?php echo $result["datum"]; ?></span></font></td>
<td width="250px"><?php echo $result["titel"]; ?></td>
<td><?php echo $result["bericht"]; ?></td>
</tr>
<?php
}
?>
</table>
</form>
<?php
}
?>
</div>
<div class="infobox"></div>
</div>
Bovenin staat de link verwijderen...
Iemand een idee waar het fout gaat ?
Link gekopieerd
Ik denk dat het aan de action ligt in het form.
Probeer dit eens:
<link rel="stylesheet" href="../../css/admin_style.css" type="text/css" />
<div class="submenu">
<div class="submenu_links">
<img src="images/submenu/nieuwsplaatje.png" width="40" height="40" alt="Nieuws" /><img src="images/submenu/text_admin_nieuws.png" width="166" height="40" alt="text" /></div>
<div class="submenu_rechts">
<div class="nieuw"><a href="index.php?set=nieuws&p=nieuws_nieuw"><img src="images/submenu/nieuw.png" width="34" height="29" alt="Nieuw" border="0" /><br />
Nieuw</a></div>
<div class="bewerk"><a href="#" onClick="document.getElementById('method').value = 'Edit', document.bewerk.submit();"><img src="images/submenu/bewerk.png" width="34" height="29" alt="Verwijder" border="0" /> Bewerk</a></div>
<div class="verwijder"><a href="#" onClick="document.getElementById('method').value = 'Del', document.bewerk.submit();"><img src="images/submenu/verwijder.png" width="34" height="40" alt="Verwijder" /></a></div>
<div class="annuleer"><a href="index.php?set=nieuws&p=nieuws"><img src="images/submenu/annuleer.png" width="41" height="29" alt="Annuleer" border="0" />
Annuleer</a></div>
</div>
</div>
<div class="inhoud_div">
<div class="uitlijning" align="left">
<?php
if ( isset($_POST['method']) && isset($_POST['edit']) ) {
$method = addslashes($_POST['method']);
if ( $method == 'Del' ) {
$done = implode(',', $_POST['edit']);
mysql_query ( "DELETE FROM nieuws WHERE id IN ($done)" );
echo '<META http-equiv="refresh" content="0; URL='.$_SERVER['REQUEST_URI'].'">';
}
echo 'Verwijderen';
}
if(is_numeric($_GET['max'])) $max = $_GET['max'];
if(is_numeric($_GET['start'])) $start = $_GET['start'];
if (empty($max)) $max = 5;
if (empty($start)) $start = 0;
$end = $start + $max;
$prev = $start - $max;
$next = $end;
$query = mysql_query("SELECT id,datum,bericht,titel FROM nieuws ORDER BY id DESC LIMIT $start, $max") or die (mysql_error());
$num = mysql_num_rows($query);
if (empty($num))
{ ?>
<p>Er zijn geen nieuwsberichten.</p>
<?php }
else
{ ?>
<form name="bewerk" action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST" id="bewerk">
<input type="hidden" name="method" id="method" value="0">
<table border="0px" width="100%" margin="o" bgcolor="#dbdbdb" >
<tr>
<td width="15px"><input name="selectie" type="checkbox" value="selecteer" /></td>
<td width="200px">Datum:</td>
<td width="250px">Titel:</td>
<td>Bericht:</td>
</tr>
<?php
while ($result = mysql_fetch_array($query)) { ?>
<tr>
<td width="15px"><input name="selectie" type="checkbox" name="edit[]" value="<?php echo $result["id"]; ?>" id="<?php echo $result["id"]; ?>" /></td>
<td width="200px"><span style="color:#000000;" ><font size="3" color="#000000"><?php echo $result["datum"]; ?></span></font></td>
<td width="250px"><?php echo $result["titel"]; ?></td>
<td><?php echo $result["bericht"]; ?></td>
</tr>
<?php
}
?>
</table>
</form>
<?php
}
?>
</div>
<div class="infobox"></div>
</div>
Link gekopieerd