ciao raggazzi, vi volevo chiede un aiuto. Io ho questo script e volevo modificarlo in modo da poter rilevare i banner reciproci, nel senso che chi mette il suo banner sul mio e sul suo non lo mettesse automaticamente il suo verrebbe cancellato o non inserito, mi date un aiuto grazie. Questo e il codice

Codice PHP:

<?php
    
require_once('lib/master.php');
    require_once(
'macro/start.php');
//if (!Login::get()->is) Request::redirect('/login.php?r=/banner.php/');

    // Blocca ai non plus
    //if (!Login::get()->user->plus) Request::redirect('/plus.php?msg=videochat');
    // Carica la classe Banner
    
__autoload('Banner');

    
// Banner inviato?
    
if (Request::isAction('send')) {

        
// Errori
        
$e = new Error();

        try {

            
// Validazione dei dati
            
$v = new Validator($_POST);
            
$v->check('link''Inserisci il link al tuo sito'Validator::NOT_EMPTY);
            if (!
$v->isOk()) throw new ValidatorException();

            
// Sistema link
            
if (
                (!
Strings::startsWith($_POST['link'], 'http://')) &&
                (!
Strings::startsWith($_POST['link'], 'https://'))
            ) {
                
$_POST['link'] = 'http://' $_POST['link'];
            }

            
// Upload
            
$u = new Upload($_FILES['banner']);

            
// Crea banner
            
$banner Banner::create(); /* @var $banner Banner */
            
$banner->caricaBanner($u);
            
$banner->link $_POST['link'];
            
$banner->note $_POST['note'];
            
$banner->save();

            
// Vai all'ultima pagina
            
$go_to_last_page true;

        } catch (
ValidatorException $x) {
            
$_POST_ERRORS $v->getErrors();
            
$e->set('Dati inseriti non validi. Ricontrolla i campi evidenziati.');
            
FB::error($_POST_ERRORS);
            
FB::error($x);
        } catch (
UploadException $x) {
            if (
$x->getMessage() == 'Empty upload data') {
                
$e->set('Non hai scelto nessun banner da caricare.');
                
$_POST_ERRORS['banner'] = 'Carica il tuo banner cliccando il pulsante "Sfoglia".';
            } else {
                
$e->set('Hai caricato un file troppo grande.');
                
$_POST_ERRORS['banner'] = 'Scegli una banner non più grande di '.Strings::humanizeFilesize(Config::$BANNER_UPLOAD_MAX).'.';
            }
            
FB::error($x);
        } catch (
BannerSizeException $x) {
            
$e->set('Il banner deve essere in formato '.Config::$BANNER_SIZE_W.'x'.Config::$BANNER_SIZE_H.'.');
            
$_POST_ERRORS['banner'] = 'Il banner deve essere in formato '.Config::$BANNER_SIZE_W.'x'.Config::$BANNER_SIZE_H.'.';
            
FB::error($x);
        } catch (
ImageException $x) {
            
$e->set('L\'immagina caricata non è un\'immagine valida.');
            
$_POST_ERRORS['banner'] = 'Scegli una foto in formato JPG, PNG o GIF.';
            
FB::error($x);
        } catch (
DBException $x) {
            
FB::error($x);
            
$smarty->assign('banner_error'true);
        }

        
// Passa gli errori a Smarty
        
$smarty->assign('done'$e->no());
        
$smarty->assign('error'$e->get());

    }

    
// Pagina
    
$p = new Page();
    
$perpage 30;

    
// Leggi i banner
    
try {
        
$banners Banner::getAll();
        
$smarty->assign('banner_count'count($banners));
        
$p->setPageMax(ceil(count($banners) / $perpage));
        if (
$go_to_last_page$p->set('page'ceil(count($banners) / $perpage));
        
$banner_page_filter = array();
        for (
$i = ($p->getPage() - 1) * $perpage; ($i < ($p->getPage() * $perpage)) && ($i count($banners)); $i++)
            
$banner_page_filter[] = $banners[$i];
        
$smarty->assign('banners'$banner_page_filter);
        
$smarty->assign('pager'$p->createHtmlPager());
    } catch (
DBException $x) {
        
FB::error($x);
        
$smarty->assign('banner_read_error'true);
        
$banners = array();
    }

    
// Passa a smarty i limiti dei banner
    
$smarty->assign('banner_dimensioni'Config::$BANNER_SIZE_W.'x'.Config::$BANNER_SIZE_H);
    
$smarty->assign('banner_size'Strings::humanizeFilesize(Config::$BANNER_UPLOAD_MAX));

    
// Stampa HTML
    
$smarty->display('banner.tpl');
    
    require_once(
'macro/end.php');    
?>