Fork me on GitHub

Rapport de message :*
 

Auto incrément dans une requête sql?

Titre du sujet : Auto incrément dans une requête sql?
par seboseboss sur 27/05/2015 15:13:06

Salut

J'ai fait un petit script pour poster automatiquement des vidéos uptostream dans xoopstube.

Les posts se font à partir de l'url des fichiers uptobox (même id de vidéo) qui ont déja été posté manuellement

Le soucis que j'ai c'est que je doit entrer manuellement le dernier id du miroir que mon script à créer pour éviter les doublons au prochain appel.

Le script en mode manuel:

<?php
include 'header.php';
include 
XOOPS_ROOT_PATH '/header.php';

global 
$xoopsModule$xtubemyts$xoopsModuleConfig;

            
$sql    'SELECT * FROM ' $xoopsDB->prefix('xoopstube_videos') . '
        WHERE lid > 11055 AND vidsource = 120
        AND published > 0 AND published <= ' 
time() . ' AND (expired = 0 OR expired > ' time() . ')  
        AND offline = 0 
        ORDER by lid DESC'
;
$result $xoopsDB->query($sql);
    
    while (
$video_arr $xoopsDB->fetchArray($result)) {
        
$lid          0;
        
$cid          $video_arr['cid'];
        
$title        $xtubemyts->addslashes(ltrim($video_arr['title']));
        
$vidid        $xtubemyts->addslashes(ltrim(removeuptobox($video_arr['vidid'])));
        
$screenshot   $xtubemyts->addslashes(ltrim($video_arr['screenshot']));
        
$submitter    $video_arr['submitter'];
        
$publisher    $xtubemyts->addslashes(trim($video_arr['publisher']));
        
$date         time();
        
$vidsource    121;
        
$offline      $video_arr['offline'];
        
$notifypub    $video_arr['notifypub'];
        
$description  $xtubemyts->addslashes(ltrim($video_arr['description']));
        
$time         $xtubemyts->addslashes(ltrim($video_arr['time']));
        
$keywords     $xtubemyts->addslashes(trim($video_arr['keywords']));
        
$item_tag     $xtubemyts->addslashes(ltrim($video_arr['item_tag']));
        
$picurl       $xtubemyts->addslashes(ltrim($video_arr['picurl']));
        
$hd_video     $video_arr['hd_video'];
        
$vidrating    $video_arr['vidrating'];
        
$ipaddress    $_SERVER['REMOTE_ADDR'];
        
        if (
$lid == 0) {
            
$status      0;
            
$publishdate 0;
            
$message     _MD_XTUBE_THANKSFORINFO;
            if (
TRUE == xtube_checkgroups($cid'XTubeAutoApp')) {
                
$publishdate time();
                
$status      1;
                
$message     _MD_XTUBE_ISAPPROVED;
            }
            
$sql 'INSERT INTO ' $xoopsDB->prefix('xoopstube_videos')
                . 
'    (lid, cid, title, vidid, submitter, publisher, status, date, hits, rating, votes, comments, vidsource, published, expired, offline, description, ipaddress, notifypub, vidrating, time, keywords, item_tag, picurl, hd_video) ';
            
$sql .= " VALUES     ('', $cid, '$title', '$vidid', '$submitter', '$publisher', '$status', '$date', 0, 0, 0, 0, '$vidsource', '$publishdate', 0, '$offline', '$description', '$ipaddress', '$notifypub', '$vidrating', '$time', '$keywords', '$item_tag', '$picurl', $hd_video)";
            if (
$xoopsDB->queryF($sql)){
                echo 
'bravo, copie des champs réussi pour ' $title '<br />';
            }
        }
    }

include 
XOOPS_ROOT_PATH '/footer.php';
?>


Il faut donc remplacer le LID de la requête par une variable qui aura comme valeur au prochain appel, la valeur du dernier id créer par la requete insert ci dessus de manière à ce que le script redémarre de la ou il s'est arrété sans tenir compte des nouveaux id créé entre temps.


Je sais pas si ont peu faire ça avec un get insert id car au moment du rappel, je ne veut pas du dernier id créé dans la table, mais je veut garder le dernier id créé au moment de la dernière exécution du script.

Je sais pas si je suis bien clair et je sais pas si c'est possible en fait sans créer une table qui gardera l'enregistrement.


Propulsé avec XOOPS | Graphisme adapté par Tatane, Grosdunord, Montuy337513

81 Personne(s) en ligne (72 Personne(s) connectée(s) sur Forum) | Utilisateur(s): 0 | Invité(s): 81 | Plus ...