foutmelding bij een cronjob...
Ik krijg namelijk de volgende melding:
PHP Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource...
alvast bedankt voor e venetuele reacties/tips.
gr.
RK
je script controleren?
Maar het lijkt me handiger om eerst je script even te fixxen. Ziet er naar uit dat foutafhandeling lijkt te ontbreken, en dat hoort ook in een cronjob.
zal eens e.e.a. proberen.
heb het script gekocht verkopende parij biedt helaas niet de support zoals beloofd/overeengekomen zit nu met dit probleem, terwijl mijn kennis van php nog niet toereikend is..., maar zal kijken of ik wat met de tips kan...
Prima, als je er niet uit komt, dan horen we het wel.
Raoul, je kan ook het stukje van jet script posten, dan kunnen we meer zeggen.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
<?
ob_start();
error_reporting(E_ALL);
include_once("includes/functions.php");
require("includes/class.phpmailer.php");
$sql_links = "select email,sqlding from wn_agent order by wnagid ASC";
$result = mysql_query ($sql_links);
$maxdate = time()-86400; // datum van gisteren
while ($row = mysql_fetch_assoc($result))
{
//email trefwoord regio functiegebied opleiding dienstverband sqlding
$email = $row["email"]; echo $email;
$sqlding = stripslashes($row["sqlding"]);
// querie maken
$sql_zk_kamers = "select vacaid, functieomschr, standplts, standhnl
from vacatures
where voorzien = 0 AND geplaatst > $maxdate $sqlding order by geplaatst DESC LIMIT 10";
$sql_zk_kamers_result = mysql_query($sql_zk_kamers);
$num_zk_kamer_links = mysql_num_rows($sql_zk_kamers_result);
if($num_zk_kamer_links>0){
$num=0;
for ($i=0; $i<$num_zk_kamer_links; $i++)
{
$zk_kamer_row = mysql_fetch_assoc($sql_zk_kamers_result);
$zk_res_vacaid = $zk_kamer_row['vacaid'];
$zk_res_standplts = $zk_kamer_row['standplts'];
$zk_res_standhnl = $zk_kamer_row['standhnl'];
if($zk_res_standhnl==1) $zk_res_standplts = "Heel Nederland";
$zk_res_functieomschr = html_entity_decode($zk_kamer_row["functieomschr"], ENT_QUOTES);
$new_url = WEBSITE_URL.'/vacature/'.$zk_res_vacaid.'/'.format_url($zk_res_standplts).'/'.format_url($zk_res_functieomschr).'.html';
$vacaturelijst .= "- <a href='$new_url'>$new_url</a><br />";
ob_start();
error_reporting(E_ALL);
include_once("includes/functions.php");
require("includes/class.phpmailer.php");
$sql_links = "select email,sqlding from wn_agent order by wnagid ASC";
$result = mysql_query ($sql_links);
$maxdate = time()-86400; // datum van gisteren
while ($row = mysql_fetch_assoc($result))
{
//email trefwoord regio functiegebied opleiding dienstverband sqlding
$email = $row["email"]; echo $email;
$sqlding = stripslashes($row["sqlding"]);
// querie maken
$sql_zk_kamers = "select vacaid, functieomschr, standplts, standhnl
from vacatures
where voorzien = 0 AND geplaatst > $maxdate $sqlding order by geplaatst DESC LIMIT 10";
$sql_zk_kamers_result = mysql_query($sql_zk_kamers);
$num_zk_kamer_links = mysql_num_rows($sql_zk_kamers_result);
if($num_zk_kamer_links>0){
$num=0;
for ($i=0; $i<$num_zk_kamer_links; $i++)
{
$zk_kamer_row = mysql_fetch_assoc($sql_zk_kamers_result);
$zk_res_vacaid = $zk_kamer_row['vacaid'];
$zk_res_standplts = $zk_kamer_row['standplts'];
$zk_res_standhnl = $zk_kamer_row['standhnl'];
if($zk_res_standhnl==1) $zk_res_standplts = "Heel Nederland";
$zk_res_functieomschr = html_entity_decode($zk_kamer_row["functieomschr"], ENT_QUOTES);
$new_url = WEBSITE_URL.'/vacature/'.$zk_res_vacaid.'/'.format_url($zk_res_standplts).'/'.format_url($zk_res_functieomschr).'.html';
$vacaturelijst .= "- <a href='$new_url'>$new_url</a><br />";
dit moet zijn fot($i=1, .......)
... AND geplaatst > $maxdate $sqlding order by ....
Gewijzigd op 27/10/2011 19:25:16 door - SanThe -
de cronjob gedraaid en weer de zelfde foutmelding:
PHP Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in /var/www/vhosts/*************.nl/httpdocs/cronner_agents.php on line 11
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
<?
ob_start();
error_reporting(E_ALL);
include_once("includes/functions.php");
require("includes/class.phpmailer.php");
$sql_links = "select email,sqlding from wn_agent order by wnagid ASC";
$result = mysql_query ($sql_links);
$maxdate = time()-86400; // datum van gisteren
while ($row = mysql_fetch_assoc($result))
{
//email trefwoord regio functiegebied opleiding dienstverband sqlding
$email = $row["email"]; echo $email;
$sqlding = stripslashes($row["sqlding"]);
// querie maken
$sql_zk_kamers = "select vacaid, functieomschr, standplts, standhnl
from vacatures
where voorzien = 0 AND geplaatst > $maxdate $sqlding order by geplaatst DESC LIMIT 10";
$sql_zk_kamers_result = mysql_query($sql_zk_kamers);
$num_zk_kamer_links = mysql_num_rows($sql_zk_kamers_result);
if($num_zk_kamer_links>0){
$num=0;
for ($i=0; $i<$num_zk_kamer_links; $i++)
{
$zk_kamer_row = mysql_fetch_assoc($sql_zk_kamers_result);
$zk_res_vacaid = $zk_kamer_row['vacaid'];
$zk_res_standplts = $zk_kamer_row['standplts'];
$zk_res_standhnl = $zk_kamer_row['standhnl'];
if($zk_res_standhnl==1) $zk_res_standplts = "Heel Nederland";
$zk_res_functieomschr = html_entity_decode($zk_kamer_row["functieomschr"], ENT_QUOTES);
$new_url = WEBSITE_URL.'/vacature/'.$zk_res_vacaid.'/'.format_url($zk_res_standplts).'/'.format_url($zk_res_functieomschr).'.html';
$vacaturelijst .= "- <a href='$new_url'>$new_url</a><br />";
}
// email versturen
$mail = new PHPMailer();
$mail->IsSMTP(); // set mailer to use SMTP
$mail->Host = "localhost"; // specify main and backup server
$mail->SMTPAuth = false; // turn on SMTP authentication
$mail->Username = "jswan"; // SMTP username
$mail->Password = "secret"; // SMTP password
$mail->From = STD_EMAIL_WEB;
$mail->FromName = WEBSITE_NAAM;
$mail->AddAddress($email, $email);
$mail->WordWrap = 50;
$mail->IsHTML(true);
$mail->Subject = "Nieuwe vacatures Search Agent ".ucfirst(STD_DOMEIN);
$mail->Body = "
Hallo,<br /><br />
Er zijn op ".ucfirst(STD_DOMEIN)." nieuwe vacatures geplaatst die wellicht interessant voor u kunnen zijn. Hieronder staan directe links naar deze vacatures:<br />
<br />
".$vacaturelijst."
<br />
<br />
------------------------------------------------------------<br />
U kunt zich afmelden voor deze Search Agent via:<br />
<a href=\"".WEBSITE_URL."/werknemers/vacature_agent.php\">".WEBSITE_URL."/werknemers/vacature_agent.php</a>";
@$mail->Send();
}
}
?>
ob_start();
error_reporting(E_ALL);
include_once("includes/functions.php");
require("includes/class.phpmailer.php");
$sql_links = "select email,sqlding from wn_agent order by wnagid ASC";
$result = mysql_query ($sql_links);
$maxdate = time()-86400; // datum van gisteren
while ($row = mysql_fetch_assoc($result))
{
//email trefwoord regio functiegebied opleiding dienstverband sqlding
$email = $row["email"]; echo $email;
$sqlding = stripslashes($row["sqlding"]);
// querie maken
$sql_zk_kamers = "select vacaid, functieomschr, standplts, standhnl
from vacatures
where voorzien = 0 AND geplaatst > $maxdate $sqlding order by geplaatst DESC LIMIT 10";
$sql_zk_kamers_result = mysql_query($sql_zk_kamers);
$num_zk_kamer_links = mysql_num_rows($sql_zk_kamers_result);
if($num_zk_kamer_links>0){
$num=0;
for ($i=0; $i<$num_zk_kamer_links; $i++)
{
$zk_kamer_row = mysql_fetch_assoc($sql_zk_kamers_result);
$zk_res_vacaid = $zk_kamer_row['vacaid'];
$zk_res_standplts = $zk_kamer_row['standplts'];
$zk_res_standhnl = $zk_kamer_row['standhnl'];
if($zk_res_standhnl==1) $zk_res_standplts = "Heel Nederland";
$zk_res_functieomschr = html_entity_decode($zk_kamer_row["functieomschr"], ENT_QUOTES);
$new_url = WEBSITE_URL.'/vacature/'.$zk_res_vacaid.'/'.format_url($zk_res_standplts).'/'.format_url($zk_res_functieomschr).'.html';
$vacaturelijst .= "- <a href='$new_url'>$new_url</a><br />";
}
// email versturen
$mail = new PHPMailer();
$mail->IsSMTP(); // set mailer to use SMTP
$mail->Host = "localhost"; // specify main and backup server
$mail->SMTPAuth = false; // turn on SMTP authentication
$mail->Username = "jswan"; // SMTP username
$mail->Password = "secret"; // SMTP password
$mail->From = STD_EMAIL_WEB;
$mail->FromName = WEBSITE_NAAM;
$mail->AddAddress($email, $email);
$mail->WordWrap = 50;
$mail->IsHTML(true);
$mail->Subject = "Nieuwe vacatures Search Agent ".ucfirst(STD_DOMEIN);
$mail->Body = "
Hallo,<br /><br />
Er zijn op ".ucfirst(STD_DOMEIN)." nieuwe vacatures geplaatst die wellicht interessant voor u kunnen zijn. Hieronder staan directe links naar deze vacatures:<br />
<br />
".$vacaturelijst."
<br />
<br />
------------------------------------------------------------<br />
U kunt zich afmelden voor deze Search Agent via:<br />
<a href=\"".WEBSITE_URL."/werknemers/vacature_agent.php\">".WEBSITE_URL."/werknemers/vacature_agent.php</a>";
@$mail->Send();
}
}
?>
- SanThe - op 27/10/2011 19:24:59:
En wat denk je van dit?
... AND geplaatst > $maxdate $sqlding order by ....
... AND geplaatst > $maxdate $sqlding order by ....
Lees je wel?
Edit:
En dat kan zoveel redenen hebben dat we daar niet een zinnig woord over kunnen zeggen.
- is er wel verbinding met de database?
- werkt de query in regel 7?
- wat is de eventuele fout van de query op regel 7?
- etc, etc.
Overigens moet je bij cronjobs altijd goed op de includes (include_once(), require(), etc) letten, die moeten vaak het volledige path naar het bestand hebben.
Gewijzigd op 28/10/2011 10:35:16 door Elwin - Fratsloos
wat is er dan met?
AND $maxdate $sqlding....
het zegt mij niet zoveel...
wat raden jullie me aan als het gaat om iemand vinden die het gehele script doorlicht..., want hier gan ik me nek niet 200x overbreken, kan er beter iemand voor zoeken toch?
Code (php)
1
2
3
4
5
6
7
2
3
4
5
6
7
<?php
$sql_zk_kamers = "SELECT vacaid, functieomschr, standplts, standhnl
FROM vacatures
WHERE voorzien = 0 AND geplaatst > ".$maxdate." ".$sqlding."
ORDER BY geplaatst DESC LIMIT 10
";
?>
$sql_zk_kamers = "SELECT vacaid, functieomschr, standplts, standhnl
FROM vacatures
WHERE voorzien = 0 AND geplaatst > ".$maxdate." ".$sqlding."
ORDER BY geplaatst DESC LIMIT 10
";
?>
Echo die string $sql_zk_kamers maar eens, en kijk eens of deze query wel klopt?
Uiteraard niet via een cronjob, heb je weinig aan bij debugging ;-)
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
$sql_zk_kamers = "
SELECT
vacaid,
functieomschr,
standplts,
standhnl
FROM
vacatures
WHERE
voorzien = 0 AND
geplaatst > ". $maxdate ." ". $sqlding ."
ORDER BY
geplaatst DESC
LIMIT 10";
?>
$sql_zk_kamers = "
SELECT
vacaid,
functieomschr,
standplts,
standhnl
FROM
vacatures
WHERE
voorzien = 0 AND
geplaatst > ". $maxdate ." ". $sqlding ."
ORDER BY
geplaatst DESC
LIMIT 10";
?>
Zie je het verschil in het gebruik van variabelen in een query?
EDIT: Aar was eerder :p
Gewijzigd op 28/10/2011 11:12:16 door Maikel B
Maar groter dan en dan twee $vars achter elkaar kan toch niet. Bouw nette foutafhandeling in en mysql vertelt exact wat de fout is.
of echo de query.