login  Naam:   Wachtwoord: 
Registreer je!
 Forum

ideal loopen

Offline Warbringer - 20/08/2007 17:15
Avatar van WarbringerOnbekend Beste mensen.

Ben nu al enkele dagen bezig met het fixen van mijn ideal wat mij tot op
heden helaas nog niet gelukt is. Ik heb contact gehad met de klantenservice
en die vertellen mij het volgende:

Waarschijnlijk gaat het mis doordat sommige klanten niet terugkeren op uw website. (Men klikt direct na de melding succesvolle betaling op ‘het rode kruisje’). Standaard wordt bij terugkeer de merchanturl aan geroepen met uw statreq call. Als men niet terugkeert, dan wordt deze url ook niet aangeroepen.


-------------------------------------------------------
Om dit te ondervangen kunt u een loop inbouwen in uw website, dat zodra een klant de bank gekozen (transreq.php) heeft u een loop start om na 15 minuten de statreq.php aan te roepen. Is de XML <status> nog steeds OPEN, dan dient de loop na 15 minuten opnieuw statreq aan te roepen, net zo lang tot een andere status ontvangt. In dit geval moet de loop stoppen. U kunt nu checken op status is SUCCES of andere status (mislukt zoals CANCELED, EXPIRED, FAILURE etc.) en verder verwerken in uw backoffice applicatie.

Om flooding te voorkomen adviseren we een loop voor max 2 dagen, het eerste uur om het kwartier en de resterende 47 om het uur. Als er dan nog geen status bekend is, dient u contact met ons op te nemen om uit te zoeken wat er aan de hand is.
-------------------------------------------------------

Deze loop gaat mij helaas te buiten en is nog net iets te moeilijk voor mijn 'beginners' PHP kennis.
Zou iemand mij svp hiermee kunnen helpen? Onderstaand zal ik de code van de pagina plakken.

-------------------------------------------------------
transreq.php
-------------------------------------------------------
http://plaatscode.be/6375/

2 antwoorden

Gesponsorde links
Offline marten - 20/08/2007 17:46
Avatar van marten Beheerder Wat ze dus bedoelen is dat je de status moet afvangen. Dat kan bijvoorbeeld door een loop te maken. Dit kan ook door een cronjob die je elke x aantal minuten laat draaien.

Zet in je transReq.php (Op de plaats waar je het in je database zet) een extra query die de huidige tijd + 15 minuten doet. Zo krijg je de uiterlijke tijd dat de request voldaan moet zijn. Met de cronjob bekijk je dus of de huidige tijd gelijk of na de tijd in de db ligt. Is dit na de tijd in de db verwijderen je het request weer uit je database.
Offline Warbringer - 20/08/2007 17:53
Avatar van Warbringer Onbekend dank u wel voor uw antwoord!
uhmm... ik heb totaal GEEN ervaring met cronjobs en
mijn kennis in PHP is nog niet echt groot.

Ik moet dus een variable er tussen zetten en deze moet ik
dus ook in de MYSQL database stoppen?

dus na het volgende:

  1. // transactionID opslaan in database
  2. require ("../testen/include.php");
  3. $transactionID = $result->getTransactionID();
  4. $sql = "UPDATE tblbestellingen SET transactionid = '$transactionID' WHERE code = '$orderNumber'";
  5. SaveRecord ($sql);


moet ik doen (denk ik):

  1. $ResTime = time() + 15;


en dan in de SQL zetten en dan moet de cronjob dus kijken van is die tijd al overschreden? zo ja dan.... zo nee dan niks ?
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.366s