Witam forumowiczów.
Jest to mój pierwszy post na tym forum

Byłbym wdzięczny za pomoc i rady.
Generalnie napisałem panel Allegro z bazą mysql.
Grafiki są generowane przez php (nie są fizycznie zapisywane na serwerze).
Zapytanie CRON wywołuje skrypt odpowiadający za wylosowanie określonej liczby aukcji ze wszystkich aukcji użytkownika i aktualizuje dane w tabeli "tabela_cron" mySQL.
Podczas ładowania się miniatur w opisie aukcji do kolejnej tabeli "tabela_cache" zapisywana jest kolejna lista zawierająca adres IP (prawdopodobnie jedno z najgłupszych rozwiązań

) i id wszystkich wyświetlonych obecnie w panelu aukcji - jest to jedyne zabezpieczenie przed wysyłaniem po kliknięciu na grafike do aukcji z następnego losowania, które udało mi sie wymyślić.
Moja prośba o pomoc dotyczy tego że w zamyślę po kliknięciu na dany element panelu i po przniesieniu do odpowiedniej aukcji panel powinien sie zaktualizować (cron jet co minutę), tak się jednak nie dzieje. Kolejna moja prośba dotyczy tego ukierunkować mnie jak rozwiązać jeszcze jedne problem. Linki otwierają nowe karty w przeglądarce i w tym momencie jest aktualizowana tabela_cache . I jeżeli użytkownik wróci do poprzednije karty znowu panel posyła go w maliny
funkcje związane z mysql
<?php
/*funkcja przyjmująca argumenty:
* $opcja - opcja funkcji (string)
* $aukcje_cron - lista aukcji cron -> nr|id|title|price|img|time
* $aukcje_cache - lista aukcji cache -> ip|aukcja_1|aukcja_2|aukcja_3|aukcja_4|aukcja_5|aukcja_6|aukcja_7|aukcja_8|aukcj
a_9|aukcja_10
*/
require_once ('case4mobile_config.php'); // dane konfiguracyjne
function baza_danych
($opcja,$aukcja_cron=array(),$aukcje_cache=array(),$nr=1
){
$user = user;
$password = password;
$base_name= nazwa_bazy;
/*
* dodawanie/podmienianie danych aukcji wykonywane przez cron
*/
if($opcja=='cron_list'){
for ($i=0; $i<10;$i++){
$query= "UPDATE ".tabela_cron."
SET id = '".$aukcja_cron[$i][0]."',
title = '".$aukcja_cron[$i][1]."',
price = '".$aukcja_cron[$i][2]."',
img = '".$aukcja_cron[$i][3]."',
time = '".$aukcja_cron[$i][4]."'
WHERE uid = ".$i;
}
}
if($opcja=='cron_list_listing'){
$query= "SELECT * FROM ".tabela_cron." WHERE uid = '".$nr."'";
return $row;
}
if($opcja=='cache_list'){
$query= "SELECT count(*) FROM ".tabela_cache." WHERE ip = '".$_SERVER['REMOTE_ADDR']."'";
if($result>0){
$query= "UPDATE ".tabela_cache."
SET aukcja_1 = '".$aukcje_cache[0]."',
aukcja_2 = '".$aukcje_cache[1]."',
aukcja_3 = '".$aukcje_cache[2]."',
aukcja_4 = '".$aukcje_cache[3]."',
aukcja_5 = '".$aukcje_cache[4]."',
aukcja_6 = '".$aukcje_cache[5]."',
aukcja_7 = '".$aukcje_cache[6]."',
aukcja_8 = '".$aukcje_cache[7]."',
aukcja_9 = '".$aukcje_cache[8]."',
aukcja_10 = '".$aukcje_cache[9]."'
WHERE ip = '".$_SERVER['REMOTE_ADDR']."'";
}else{
$query= "INSERT INTO ".tabela_cache."
SET ip = '".$_SERVER['REMOTE_ADDR']."',
aukcja_1 = '".$aukcje_cache[0]."',
aukcja_2 = '".$aukcje_cache[1]."',
aukcja_3 = '".$aukcje_cache[2]."',
aukcja_4 = '".$aukcje_cache[3]."',
aukcja_5 = '".$aukcje_cache[4]."',
aukcja_6 = '".$aukcje_cache[5]."',
aukcja_7 = '".$aukcje_cache[6]."',
aukcja_8 = '".$aukcje_cache[7]."',
aukcja_9 = '".$aukcje_cache[8]."',
aukcja_10 = '".$aukcje_cache[9]."'";
}
}
if($opcja=='cache_list_listing'){
$query= "SELECT * FROM ".tabela_cache." WHERE ip = '".$_SERVER['REMOTE_ADDR']."'";
return $row;
}
}
?>
skrypt do CRON
<?
require_once('lib/nusoap.php');
require_once('mysql_func.php');
define('WEBAPI_USER_LOGIN', '********'); define('WEBAPI_KEY', '*********'); define('USER_ID', '********'); define('LICZBA_AUKCJI', '10');
$product_nr=$_GET["nr"];
$soapClient = new nusoap_client('https://webapi.allegro.pl/service.php?wsdl', true);
$result = $soapClient->call(
'doQueryAllSysStatus',
'countryId' => COUNTRY_CODE,
'webapiKey' => WEBAPI_KEY
)
)
);
foreach ($result['sysCountryStatus']['item'] as $row) {
$versionKeys[$row['countryId']] = $row;
}
$session = $soapClient->call(
'doLoginEnc',
'userLogin' => WEBAPI_USER_LOGIN,
'userHashPassword' => WEBAPI_USER_ENCODED_PASSWORD,
'countryCode' => COUNTRY_CODE,
'webapiKey' => WEBAPI_KEY,
'localVersion' => $versionKeys[COUNTRY_CODE]['verKey']
)
)
);
$liczba=0;
$itemList = $soapClient->call(
'doGetUserItems',
'userId' =>39734731,
'webapiKey' => WEBAPI_KEY,
'countryId' => 1,
'offset' => 0,
'limit' => 1
)
)
);
$liczba_aukcji=$itemList["userItemCount"];
if($itemList["userItemCount"]>10){
$liczba=10;
}else{
$liczba=$itemList["userItemCount"];
}
while (count($losy)<$liczba){ $los=rand(0
,$liczba_aukcji-1
); $losy[]=$los;
}
}
for($i=0;$i<count($losy);$i++)
{
$itemList = $soapClient->call(
'doGetUserItems',
'userId' =>39734731,
'webapiKey' => WEBAPI_KEY,
'countryId' => 1,
'offset' => $losy[$i],
'limit' => 1
)
)
);
$itemList["userItemList"]["item"]["itId"],
$itemList["userItemList"]["item"]["itName"],
$itemList["userItemList"]["item"]["itBuyNowPrice"],
$itemList["userItemList"]["item"]["itThumbUrl"],
$itemList["userItemList"]["item"]["itTimeLeft"]);
}
baza_danych('cron_list',$lista_aukcji);
?>
Wyświetlanie obrazków i linki
<?
require_once('mysql_func.php');
if ($_GET['op'] == 0) {
$produkt= baza_danych('cron_list_listing',null,null,$_GET['nr']);
$item_tumblr = $produkt[4];
$ItemMini = str_replace("128x96", "400x300", $item_tumblr);
header("Content-type: image/jpeg");
if ($ItemMini != "") {
$img = imagecreatefromjpeg($ItemMini);
$width = 200;
$height = 250;
$mini = imagecreatetruecolor($width, $height);
imagejpeg($mini,NULL,100);
imagedestroy($mini);
}
if($_GET['nr']==1){
for($i=0;$i<10;$i++){
$prod=baza_danych('cron_list_listing',null,null,$i);
$info[]=$prod[1];
}
baza_danych('cache_list',null,$info);
}
}
if ($_GET['op'] == '1') {
$file=baza_danych('cache_list_listing',null,null,$_GET['nr']);
$adres = 'http://allegro.pl/show_item.php?item='.$file[$_GET['nr']+1];
header("Location: " . $adres); };
przekierowanie nastepuje po podaniu w zmiennych get op=1, a obrazek op=0, do tego jeszcze wymagana jest zmienna 'nr' z nr aukcji od 0 do 10
Dziękuję za pomoc z góry