Cronjob en includes

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Ferdi R

Ferdi R

16/07/2015 16:01:43
Quote Anchor link
Ik probeer een cronjob te maken maar ik heb een beetje een probleem met een include. Ik maag gebruik van Codebird om automatisch te tweeten, zie: https://github.com/jublonet/codebird-php. De cronjob zelf werkt maar het tweeten lukt niet, wel als ik de pagina (cron bestand) zelf aan roep.

Het includen van de config bestand werkt goed want de database word geupdate, en het includen doe ik zo.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
include '/home/gebruiker/domains/domein.nl/public_html/config.php';
?>



Hier gaat het niet goed bij het tweeten, het cron bestand en de bestanden van codebird zitten allen in de map tweet
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?php
                    include_once '/home/gebruiker/domains/domein.nl/public_html/tweet/codebird.php';

            \Codebird\Codebird::setConsumerKey("xxx", "xxx");
            $cb = \Codebird\Codebird::getInstance();
            $cb->setToken("xxx", "xxx");
        
            $params = array(
              'status' => 'Tweet dit bericht'
            );
            $reply = $cb->statuses_update($params);
?>


xxx zijn mijn tokens.

Dus als ik het bestand zelf aanroep werkt alles, als het via de cronjob gaat werk het updaten van de database wel allen het tweeten gaat mis.
 
PHP hulp

PHP hulp

26/06/2022 12:56:50
 
- Ariën  -
Beheerder

- Ariën -

16/07/2015 16:10:11
Quote Anchor link
Ik vermoed dat er ergens anders in het script ook een relatief pad gebruikt wordt in een include. Je kan anders ook wget gebruiken in je cron-command. Dan roep je de pagina letterlijk op zoals een browser ook doet.
 
Ferdi R

Ferdi R

16/07/2015 17:25:27
Quote Anchor link
Ik gebruik nu deze cron

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
/usr/local/bin/php -q -f /home/gebruiker/domains/domein.nl/public_html/tweet/cron.php


Hoe roep ik het aan met wget?
 
- Ariën  -
Beheerder

- Ariën -

16/07/2015 17:46:44
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
wget http://www.domein.nl/tweet/cron.php
Gewijzigd op 16/07/2015 17:47:08 door - Ariën -
 
Ferdi R

Ferdi R

16/07/2015 17:55:23
Quote Anchor link
Ik heb de error report even aan gezet en ik krijg een melding vanuit de codebird class:

Fatal error: Uncaught exception 'Exception' with message 'Request error for API call: name lookup timed out' in
 
- Ariën  -
Beheerder

- Ariën -

16/07/2015 17:58:02
Quote Anchor link
API kan hij niet aanroepen.
Kan je de API zelf via je browser aanroepen?
Klopt de URL daarheen nog wel?
Wordt er anders iets geblokkeerd bij je hosting?
 
Ferdi R

Ferdi R

16/07/2015 18:03:04
Quote Anchor link
Volgens mij blokt de twitter api het zelf als je het al eens getweet hebt kan je niet voor een tweede keer het zelde tweeten.

Het werkt nu als ik steeds de tekst verander wat getweet wordt.
 
- Ariën  -
Beheerder

- Ariën -

16/07/2015 18:07:39
Quote Anchor link
Volgens mij heb je gelijk. Ik heb dit ook al eens meegemaakt.
 
Ferdi R

Ferdi R

16/07/2015 18:11:08
Quote Anchor link
Opgelost! Ben blij dat het werkt. Bedankt voor je hulp.


Het was al frustrerend dat het de ene keer wel werkte via de browser en de andere keer niet, maar dat kwam dus gewoon dat ik de zelfde tekst wou tweeten.
 
Eddy E

Eddy E

16/07/2015 20:14:40
Quote Anchor link
Lekker van Twitter dat ze dat niet even terugkoppelen via een foutmelding of zoiets.
Nu is het gissen en toevallig vind je het, hoe makkelijk had het geweest als een Twitter iets terugstuurde als "Error, duplicate content".
 
Ferdi R

Ferdi R

18/07/2015 20:54:17
Quote Anchor link
Ik wil het topic nog even aanvullen: De zelfde tekst tweeten werkt niet achter elkaar maar ik heb ook gemerkt dat als je dezelfde link wil tweeten (maar wel met andere tekst) achter elkaar dat het dan ook niet lukt.
 
- Ariën  -
Beheerder

- Ariën -

18/07/2015 21:02:01
Quote Anchor link
Zal wel een anti-spam maatregel zijn.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.