Fork me on GitHub




« 1 ... 5 6 7 (8) 9 10 »


Re: xoopstube: index : liste alphabetique qui commence par les nombres :0123...
Semi pro
Inscrit: 09/03/2003 23:29
Messages: 800
oui, lol !

merci encore !

celine

Posté le : 27/06/2013 20:56
Partager Twitter Partagez cette article sur GG+
Re: xoopstube: index : liste alphabetique qui commence par les nombres :0123...
Semi pro
Inscrit: 09/03/2003 23:29
Messages: 800
Bonjour,

Est ce que vous pourriez donc me réecrire la dernière requête qui fonctionne ?, à savoir :

SELECT t1.vidid
FROM xj13_xoopstube_videos AS t1
INNER JOIN
(
SELECT vidid
FROM xj13_xoopstube_videos
GROUP BY vidid
HAVING count(vidid) > 1
)
AS t2
ON t1.vidid=t2.vidid
ORDER BY t1.vidid ASC



***

pour que ça recherche sur les titres de la video, car je ne voudrais pas faire de bêtises...

Merci beaucoup.


Celine


Posté le : 28/06/2013 08:15
Partager Twitter Partagez cette article sur GG+
Re: xoopstube: index : liste alphabetique qui commence par les nombres :0123...
Semi pro
Inscrit: 09/03/2003 23:29
Messages: 800
Comment exporter les résultats ?

si je fais cocher tous (les 29)et exporter vars un fichier...sql... je me retrouve avec un fichier qui est vide (si je coche que les données)

si je mets structure et sonnées, le fichier comporte que le CREATE de la création de la structure...


Mais dans les 2 cas, je n'ai pas les 29 enregistrements qui apparaissent...


Pourquoi ?


Merci de vos réponses, encore une fois !


Celine

Posté le : 28/06/2013 08:26
Partager Twitter Partagez cette article sur GG+
Re: xoopstube: index : liste alphabetique qui commence par les nombres :0123...
Xoops accro
Inscrit: 15/07/2004 11:16
Messages: 4763
Alors pour commencer, attention, tu n'as pas 29 résultats, mais 601 en tout.
Par défaut, phpmyadmin n'en affiche que 30 (0 à 29).

Je t'ai refait mon fichier php avec la requête méthode slider94
Essaie de coller ce code dans un fichier .php, dans ton dossier 'xoopstube'.
Et ouvre ce fichier dans ton navigateur.
Si tu as tous les résultats affichés, tu viens nous le dire, et on avisera pour te faire supprimer tes doublons (il faudra nous dire quels sont tes critères de suppression : telle vidéo plutôt que telle autre).

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

$sql 'SELECT lid, cid, title, t1.vidid, published
FROM ' 
.$xoopsDB->prefix('xoopstube_videos').' AS t1 
INNER JOIN 

SELECT vidid 
FROM ' 
.$xoopsDB->prefix('xoopstube_videos').'
GROUP BY vidid 
HAVING count(vidid) > 1 

AS t2
ON t1.vidid=t2.vidid 
ORDER BY t1.vidid ASC'
;

$result $xoopsDB->query($sql);

echo 
"Vidéos regroupées par identifiant de la vidéo (vidid).<br /><br />";
echo 
"Cliquer sur le titre ou l'id pour accéder à la vidéo.<br /><br />";
echo 
"<table>";
echo 
"<tr><td>ID</td><td>Titre</td><td>Vidid</td><td>Catégorie</td><td>Publié le</td></tr>";

while (
$arr $xoopsDB->fetchArray($result)) {
    
$videouid['title']     = $xtubemyts->htmlSpecialCharsStrip($arr['title']);
    
$videouid['lid']       = $arr['lid'];
    
$videouid['cid']       = $arr['cid'];
    
$videouid['vidid']     = $arr['vidid'];
    
$videouid['published'] = xoopstube_time(formatTimestamp($arr['published'], $xoopsModuleConfig['dateformat']));

    echo 
'<tr><td><a href="singlevideo.php?cid='.$videouid['cid'].'&lid='.$videouid['lid'].'" target="_blank">'.$videouid['lid'].'</a></td><td><a href="singlevideo.php?cid='.$videouid['cid'].'&lid='.$videouid['lid'].'" target="_blank">'.$videouid['title'].'</a></td><td>'.$videouid['vidid'] . '</td><td>'.$videouid['cid'].'</td><td>'.$videouid['published'].'<td></tr>';
}
echo 
"</table>";

include 
XOOPS_ROOT_PATH '/footer.php';
?>

Posté le : 28/06/2013 10:07
Partager Twitter Partagez cette article sur GG+
Re: xoopstube: index : liste alphabetique qui commence par les nombres :0123...
Xoops accro
Inscrit: 15/07/2004 11:16
Messages: 4763
Et voici la version avec la requête de recherche sur le titre
<?php
include 'header.php';
include 
XOOPS_ROOT_PATH '/header.php';

$sql 'SELECT lid, cid, t1.vidid, t1.title, published
FROM ' 
.$xoopsDB->prefix('xoopstube_videos').' AS t1 
INNER JOIN 

SELECT title
FROM ' 
.$xoopsDB->prefix('xoopstube_videos').'
GROUP BY title
HAVING count(title) > 1 

AS t2
ON t1.title=t2.title
ORDER BY t1.title ASC'
;

$result $xoopsDB->query($sql);

echo 
"Vidéos regroupées par titre de la vidéo (title).<br /><br />";
echo 
"Cliquer sur le titre ou l'id pour accéder à la vidéo.<br /><br />";
echo 
"<table>";
echo 
"<tr><td>ID</td><td>Titre</td><td>Vidid</td><td>Catégorie</td><td>Publié le</td></tr>";

while (
$arr $xoopsDB->fetchArray($result)) {
    
$videouid['title']     = $xtubemyts->htmlSpecialCharsStrip($arr['title']);
    
$videouid['lid']       = $arr['lid'];
    
$videouid['cid']       = $arr['cid'];
    
$videouid['vidid']     = $arr['vidid'];
    
$videouid['published'] = xoopstube_time(formatTimestamp($arr['published'], $xoopsModuleConfig['dateformat']));

    echo 
'<tr><td><a href="singlevideo.php?cid='.$videouid['cid'].'&lid='.$videouid['lid'].'" target="_blank">'.$videouid['lid'].'</a></td><td><a href="singlevideo.php?cid='.$videouid['cid'].'&lid='.$videouid['lid'].'" target="_blank">'.$videouid['title'].'</a></td><td>'.$videouid['vidid'] . '</td><td>'.$videouid['cid'].'</td><td>'.$videouid['published'].'<td></tr>';
}
echo 
"</table>";

include 
XOOPS_ROOT_PATH '/footer.php';
?>

Posté le : 28/06/2013 10:11
Partager Twitter Partagez cette article sur GG+
Re: xoopstube: index : liste alphabetique qui commence par les nombres :0123...
Xoops accro
Inscrit: 15/07/2004 11:16
Messages: 4763
Citation :
celinefnac a écrit :
Bonjour,

Est ce que vous pourriez donc me réecrire la dernière requête qui fonctionne ?, à savoir :

SELECT t1.vidid
FROM xj13_xoopstube_videos AS t1
INNER JOIN
(
SELECT vidid
FROM xj13_xoopstube_videos
GROUP BY vidid
HAVING count(vidid) > 1
)
AS t2
ON t1.vidid=t2.vidid
ORDER BY t1.vidid ASC



***

pour que ça recherche sur les titres de la video, car je ne voudrais pas faire de bêtises...

Merci beaucoup.


Celine



Et pour PhpMyAdmin, voici la requête pour le tri sur le titre :
Tu auras peut-être un résultat différent de la première requête, puisque tu peux très bien avoir mis 2 titres identiques, avec 2 vidéos différentes (tout comme tu aurais pu mettre 2 fois la même vidéo avec un titre différent).

SELECT lidcidt1.vididt1.titlepublished
FROM xj13_xoopstube_videos 
AS t1 
INNER JOIN 

SELECT title
FROM xj13_xoopstube_videos 
GROUP BY title
HAVING count
(title) > 

AS 
t2
ON t1
.title=t2.title
ORDER BY t1
.title ASC

Posté le : 28/06/2013 10:14
Partager Twitter Partagez cette article sur GG+
Re: xoopstube: index : liste alphabetique qui commence par les nombres :0123...
Semi pro
Inscrit: 09/03/2003 23:29
Messages: 800
J'en avais supprimé quelques uns manuellement du resultat de recherche.

Du coup, la 1ere requete: j'en ai 568 sur phpadmin.

Et avec le fichier php que j'ai mis dans le rep xooptube, les resultats s'affichent dans le site, dans le module xoopstube.

C'est nickel !

Mais apres copier coller, dans editeur de texte, puis dans excel, j'en ai QUE 454 !

Pourquoi ?

Où sont passés les autres ?



et sur titres, j'en ai 278 avec ton fichier php (idem avec la requetes sql), donc ok, ici.

Merci de ton aide.

Celine

Ps : Pour le tri, je ne peux pas faire en automatique, car je vais choisir entre 2 catégories, à chaque, où c'est le mieux de la laisser...

Posté le : 28/06/2013 11:25
Partager Twitter Partagez cette article sur GG+
Re: xoopstube: index : liste alphabetique qui commence par les nombres :0123...
Xoops accro
Inscrit: 15/07/2004 11:16
Messages: 4763
Pourquoi tu veux à tout prix aller coller ça dans excel ou un éditeur de texte ?

Posté le : 28/06/2013 13:35
Partager Twitter Partagez cette article sur GG+
Re: xoopstube: index : liste alphabetique qui commence par les nombres :0123...
Xoops accro
Inscrit: 15/07/2004 11:16
Messages: 4763
Avant de passer à la suite, fais une sauvegarde complète de ta base de données.
Tu peux créer une page web du nom que tu voudras, contenant le code suivant, et placer cette page dans ton dossier 'xoopstube'.
<?php
include 'header.php';
include 
XOOPS_ROOT_PATH '/header.php';

//utiliser le type de regroupement souhaité, en commentant l'une ou l'autre des lignes ci-dessous
$regroupement "vidid";
//$regroupement = "title";

if (isset($_GET['op'])) {$op $_GET['op'];}
else {
$_GET['op']="";}

if (
$_GET['op'] == "delete") {
        
// delete video
        
$sql 'DELETE FROM ' $xoopsDB->prefix('xoopstube_videos') . ' WHERE lid=' $_GET['lid'];
        
$req mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error()); 
        
// delete altcat
        
$sql 'DELETE FROM ' $xoopsDB->prefix('xoopstube_altcat') . ' WHERE lid=' $_GET['lid'];
        
$req mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error()); 
        
// delete vote data
        
$sql 'DELETE FROM ' $xoopsDB->prefix('xoopstube_votedata') . ' WHERE lid=' $_GET['lid'];
        
$req mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error()); 
        
// delete comments
        
$sql 'DELETE FROM ' $xoopsDB->prefix('xoopscomments') . ' WHERE (com_modid = "'.$xoopsModule->getVar('mid').'" AND com_itemid = "'.$_GET['lid'].'")';
        
$req mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error()); 
        
header('Location:'.$_SERVER['PHP_SELF']);
}

else {
    
$sql 'SELECT lid, cid, t1.title, t1.vidid, published
    FROM ' 
.$xoopsDB->prefix('xoopstube_videos').' AS t1
    INNER JOIN 
    ( 
    SELECT '
.$regroupement.
    FROM ' 
.$xoopsDB->prefix('xoopstube_videos').'
    GROUP BY '
.$regroupement.
    HAVING count('
.$regroupement.') > 1 
    ) 
    AS t2
    ON t1.'
.$regroupement.'=t2.'.$regroupement.
    ORDER BY t1.'
.$regroupement.' ASC';

    
$result $xoopsDB->query($sql);

    echo 
"Vidéos regroupées par : ".$regroupement."<br /><br />";
    echo 
"Cliquer sur le titre ou l'id pour accéder à la vidéo.<br /><br />";
    echo 
"<table>";
    echo 
"<tr><td width="25px">&nbsp;</td><td>ID</td><td>Titre</td><td>Vidid</td><td>Catégorie</td><td>Publié le</td></tr>";

    while (
$arr $xoopsDB->fetchArray($result)) {
        
$videouid['title']     = $xtubemyts->htmlSpecialCharsStrip($arr['title']);
        
$videouid['lid']       = $arr['lid'];
        
$videouid['cid']       = $arr['cid'];
        
$videouid['vidid']     = $arr['vidid'];
        
$videouid['published'] = xoopstube_time(formatTimestamp($arr['published'], $xoopsModuleConfig['dateformat']));

        echo 
'<tr><td><a href="' XOOPS_URL '/modules/' $xoopsModule->getVar('dirname') . '/doublons.php?op=delete&amp;lid='
                
$videouid['lid']  . '"><img src="' $xoopsModule->getInfo('icons16') . '/delete.png" alt="'
                
_MD_XTUBE_DELETE '" title="' _MD_XTUBE_DELETE '" style="vertical-align: middle;" /></a></td><td><a href="singlevideo.php?cid='.$videouid['cid'].'&lid='.$videouid['lid'].'" target="_blank">'.$videouid['lid'].'</a></td><td><a href="singlevideo.php?cid='.$videouid['cid'].'&lid='.$videouid['lid'].'" target="_blank">'.$videouid['title'].'</a></td><td>'.$videouid['vidid'] . '</td><td>'.xtube_cattitle($videouid['cid']).'</td><td>'.$videouid['published'].'<td></tr>';
    }
    echo 
"</table>";
}

include 
XOOPS_ROOT_PATH '/footer.php';

?>


Appelle ensuite cette page dans ton navigateur.
Par défaut, la recherche et le regroupement se font sur le vidid (tu peux changer ce comportement en regardant le début du code, tu as juste commenter une ligne, et à décomenter l'autre ligne).

En affichant cette page dans ton navigateur, tu devrais avoir la liste complète des vidéos en doublons.
Tu peux soit cliquer sur le nom de la vidéo, pour y accéder.
Soit supprimer directement la vidéo avec l'image prévue à cet effet.
ATTENTION : la suppression est immédiate et sans confirmation..
Elle supprime la vidéo, les votes et les commentaires associés (comme si tu passais par la suppression habituelle en fait, mais sans confirmation, histoire d'être plus efficace).
Lorsque tu as cliqué pour supprimer une vidéo, ça revient tout seul sur la page (sans l'élément supprimé bien entendu).

Ne donne le lien vers cette page à personne, je n'ai sécurisé aucune étape/requête, donc n'importe qui peut aller supprimer des vidéos, ou même accéder à ta base de données s'il avait accès à cette page).

Posté le : 28/06/2013 14:21
Partager Twitter Partagez cette article sur GG+
Re: xoopstube: index : liste alphabetique qui commence par les nombres :0123...
Admin Frxoops
Inscrit: 16/05/2003 18:10
De Rhone-Alpes
Messages: 4051
héhé, donne moi vite ton lien url Céline, histoire que je fasse moi-même du ménage ^^

Posté le : 28/06/2013 14:24

Open in new window
Partager Twitter Partagez cette article sur GG+

 Haut   Précédent   Suivant
« 1 ... 5 6 7 (8) 9 10 »



Vous pouvez voir les sujets.
Vous ne pouvez pas débuter de nouveaux sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

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

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