Hey, ik heb een script gekocht dat ik nu aan het ombouwen ben.
Het gaat om een vakantiehuizen-verhuur script. In het volgende stuk code wordt er gecheckt of een advertentie voor een bepaalde tijd op de site staat, en aan de hand daarvan wordt er een pagina ge-include.
Nu zit dit best onlogisch in elkaar, en heb ik een nieuwe query gemaakt die eigenlijk hetzelfde doet. Nu het volgende; Hoe kan ik na het uitvoeren van de query voor elk apart resultaat de include 'datum/verwijder.php' uitvoeren.
Originele code:
Mijn nieuwe query (controleert of 'lengtead' is ingesteld op 3, 6 of 12 maanden en checkt het verschil tussen de plaatsingsdatum en het aantal dagen dat de advertentie mag blijven staan.PHP Code:
<?php
include "config.php";
// de dag nu
$nu = date('U');
// limiet bepalen
$eind1 = 1814400; // Tijd voor het mailen ( 1814400 = 3 weken - 6652800 = 11 weken )
$eind2 = 2419200; // Tiid voor het verwijderen ( 2419200 = 4 weken - 7257600 = 12 weken )
// 86400 = 60 sec * 60 minuten * 24 uur, dus een dag
$sql = "SELECT * FROM part ORDER BY id DESC";
$res = mysql_query($sql);
if (mysql_num_rows($res) >= 1) {
while ($row = mysql_fetch_array($res))
{
$query = mysql_query("SELECT datum FROM datum WHERE part_id = '" . $row['id'] . "'");
$tijd = mysql_fetch_row($query);
$verschil = $nu-$tijd[0];
if ($verschil >= $eind1){
// te laat
if ($verschil >= $eind2){
$id = "" . $row['id'] . "";
include "datum/verwijder.php";
}
else {
// mailtje sturen
$id = "" . $row['id'] . "";
include "datum/mail_waarschuwing.php";
}
}
else {
// op tijd
}
}
}
?>
Hoe kan ik deze query nu goed verwerken in de originele code?Code://SELECT * FROM part WHERE (DATEDIFF(CURDATE(), datum) > 90 AND lengtead = 3) OR (DATEDIFF(CURDATE(), datum) > 182 AND lengtead = 6) OR (DATEDIFF(CURDATE(), datum) > 365 AND lengtead = 12);
Ik kom er zelf niet meer uit.
Alvast bedankt!
- Kleine aanpassing PHP
-
23-07-2010, 14:52 #1
- Berichten
- 348
- Lid sinds
- 16 Jaar
Kleine aanpassing PHP
-
-
23-07-2010, 15:00 #2
- Berichten
- 548
- Lid sinds
- 16 Jaar
Ik snap niet precies wat je wilt.. Kun je het iets beter uitleggen?
-
23-07-2010, 15:16 #3
- Berichten
- 348
- Lid sinds
- 16 Jaar
Deze code checkt dmv de query of een advertentie er te lang op staat. Zoja, dan wordt 'datum/verwijder.php' aangeroepen, en daarin staat dan weer code die de adverentie verwijdert, en de foto's loskoppelt e.d.
Nu komt er uit mijn query een resultaat. Als dit meer dan 1 record is, dan moet hij voor allebei apart die verwijder.php aanroepen, omdat die weer kijkt naar de $id om zo het juiste record te verwijderen.
Ik denk dus dat ik een 'for each' ofzo moet gebruiken, maar ik zie even niet meer hoe en waar ik alles neer moet zetten.
Hoop dat het zo wat duidelijker is..
PS. De query vervangt dus meteen dat gedeelte met $eind1, $eind2, $verschil e.d.
dat mag er dus ook allemaal uit.
-
23-07-2010, 15:18 #4
- Berichten
- 548
- Lid sinds
- 16 Jaar
Je moet een while maken en daarin zet je include('pagina_gedoe.php');
-
23-07-2010, 15:39 #5
- Berichten
- 348
- Lid sinds
- 16 Jaar
Is inmiddels opgelost :-) Met dank aan Milan.
Plaats een
- + Advertentie
- + Onderwerp
Marktplaats
Webmasterforum
- Websites algemeen
- Sitechecks
- Marketing
- Domeinen algemeen
- Waardebepaling
- CMS
- Wordpress
- Joomla
- Magento
- Google algemeen
- SEO
- Analytics
- Adsense
- Adwords
- HTML / XHTML
- CSS
- Programmeren
- PHP
- Javascript
- JQuery
- MySQL
- Ondernemen algemeen
- Belastingen
- Juridisch
- Grafisch ontwerp
- Hosting Algemeen
- Hardware Info
- Offtopic