Back to top

Autore Topic: Articolo "public" che diventa "registered" a tempo  (Letto 3728 volte)

Offline Secursystem

  • Nuovo arrivato
  • *
  • Post: 16
    • Mostra profilo
Articolo "public" che diventa "registered" a tempo
« il: 19 Lug 2014, 20:43:33 »
Ciao a tutti,


   avrei la necessità che gli articoli siano leggibili a tutti, quindi con permessi public per "X" giorni, poi che diventino leggibili solo per utenti registrati quindi con permessi registered.


Esiste un modulo che mi permette di cambiare i permessi degli articoli K2 "a tempo" ?

Grazie


  L

Offline thewebsurfer

  • Abituale
  • ****
  • Post: 904
    • Mostra profilo
Re:Articolo "public" che diventa "registered" a tempo
« Risposta #1 il: 20 Lug 2014, 23:14:07 »
non credo esista una cosa del genere.


Se hai un po' di esperienza in php si tratta di uno script di poche righe. Ti illustro i passi.
- Seleziono dal db tutti gli articoli che devono avere questa proprietà
- conto i giorni dalla pubblicazione
- se i giorni sono > di X cambio l'accesso dell'articolo a registered.


ci vuole (quasi) più a dirlo che a farlo  :)
ovviamente devi prevedere l'esecuzione dello script quotidianamente, o lo esegui tu a mano o usi cronjob

Offline Secursystem

  • Nuovo arrivato
  • *
  • Post: 16
    • Mostra profilo
Re:Articolo "public" che diventa "registered" a tempo
« Risposta #2 il: 21 Lug 2014, 09:52:16 »
Il problema è che non ho esperienza di PHP e non saprei dove mettere le mani, speravo di trovare qualcosa di pronto :(


Offline fabiombolo

  • Esploratore
  • **
  • Post: 99
    • Mostra profilo
Re:Articolo "public" che diventa "registered" a tempo
« Risposta #3 il: 21 Lug 2014, 12:24:10 »
Tempo fa lo avevo cercato anche io per j 2.5, avevo visto questo, ma aveva un prezzo eccessivo e non l'ho nemmeno provato...


« Ultima modifica: 21 Lug 2014, 13:15:43 da tomtomeight »

Offline thewebsurfer

  • Abituale
  • ****
  • Post: 904
    • Mostra profilo
Re:Articolo "public" che diventa "registered" a tempo
« Risposta #4 il: 21 Lug 2014, 12:40:55 »
prima cosa: contatta il tuo hosting e chiedi se c'è possibilità di configurare uno script temporizzato.

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 32046
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
Re:Articolo "public" che diventa "registered" a tempo
« Risposta #5 il: 21 Lug 2014, 13:16:58 »
Per cortesia il regolamento  vieta di citare estensioni commerciali, cerchiamo di non infrangerlo. Grazie.

Offline thewebsurfer

  • Abituale
  • ****
  • Post: 904
    • Mostra profilo
Re:Articolo "public" che diventa "registered" a tempo
« Risposta #6 il: 21 Lug 2014, 14:29:44 »
buon natale :D
Codice: [Seleziona]
<?php
/*-------inserisci i tuoi dati*/
$host 'localhost';
$user 'root';
$password '';
$db 'joomla';
$dbprefix 'q1w9t_';
$INTERVALLO=10;


/*------------------------------*/
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Article Access Manager</title>


<style>
table td{
background:#c6fdff;
padding:10px}
table th{background:#c4dbff;
padding:10px
}
</style>
</head>
<body>
<?php


$mysqli 
= new mysqli($host,$user,$passowrd,$db);
if (
$mysqli->connect_errno) {
    
printf("Connect failed: %s\n"$mysqli->connect_error);
    exit();
}
$result $mysqli->query("SELECT id,title,created,access FROM ".$dbprefix."content");
if (!
$result) {
    
printf("Query fallita:".mysql_error());
exit;   
}


$dt = new DateTime();
 while (
$row =  $result->fetch_assoc()) {
       
$date = new DateTime($row["created"]);
   $diff=$date->diff($dt);
 if($diff->days>$INTERVALLO){
if($row["access"]==1)
$up_article$mysqli->query("UPDATE ".$dbprefix."content SET `access`=2 WHERE id=".$row["id"]);
 }
 
    }
$result->data_seek(0);
echo 
'<h1>Article Access Manager</h1><table><th>Titolo</th><th>Data creazione</th><th>Accesso</th>';
    while (
$row =  $result->fetch_assoc()) {
       
$date = new DateTime($row["created"]);
   $diff2=$date->diff($dt);


   echo '<tr>
<td>'
.$row["title"].'</td>
<td>'
.$date->format('Y-m-d').'- Pubblicato da '$diff2->format('%R%a').' giorni</td><td>';
switch ($row["access"]) {
case 1:
echo 'public';
break;
case 2:
echo 'registered';
break;
case 3:
echo 'special';
break;
case 5:
echo 'guest';
break;
case 6:
echo 'super user';
break;
}
 echo '</td></tr>';
    }


echo 
'</table>';






 $result->close();
?>

</body></html>
« Ultima modifica: 21 Lug 2014, 14:38:51 da thewebsurfer »

Offline fabiombolo

  • Esploratore
  • **
  • Post: 99
    • Mostra profilo
Re:Articolo "public" che diventa "registered" a tempo
« Risposta #7 il: 21 Lug 2014, 15:19:23 »
Per cortesia il regolamento  vieta di citare estensioni commerciali, cerchiamo di non infrangerlo. Grazie.


Sorry sorry sorry...   :-[

Offline thewebsurfer

  • Abituale
  • ****
  • Post: 904
    • Mostra profilo
Re:Articolo "public" che diventa "registered" a tempo
« Risposta #8 il: 22 Lug 2014, 22:03:19 »
boh sarò io l'arrogante, ma mi sarei aspettato un almeno grazie ???

Offline Secursystem

  • Nuovo arrivato
  • *
  • Post: 16
    • Mostra profilo
Re:Articolo "public" che diventa "registered" a tempo
« Risposta #9 il: 22 Lug 2014, 23:16:31 »
Scusami ma ho letto solo ora la risposta!!!


Ti ringrazio tantissimo sei stato davvero prezioso, a buon rendere  ;)


  Luca

Offline thewebsurfer

  • Abituale
  • ****
  • Post: 904
    • Mostra profilo
Re:Articolo "public" che diventa "registered" a tempo
« Risposta #10 il: 22 Lug 2014, 23:27:14 »
hai capito come far funzionare lo script?

Offline Secursystem

  • Nuovo arrivato
  • *
  • Post: 16
    • Mostra profilo
Re:Articolo "public" che diventa "registered" a tempo
« Risposta #11 il: 22 Lug 2014, 23:30:03 »
Non ho ancora avuto modo di metterlo alla prova, a grandi linee lo farcisco con i dati del mio database, lo uppo e lancio il percorso del file (esempi "articoli.php") giusto?


   L

Offline thewebsurfer

  • Abituale
  • ****
  • Post: 904
    • Mostra profilo
Re:Articolo "public" che diventa "registered" a tempo
« Risposta #12 il: 22 Lug 2014, 23:57:20 »
si, se poi fila tutto liscio stamperà semplicemente tutti gli articoli con i permessi aggiornati
(ma non ti dice quali sono stati aggiornati, ci ho pensato ora a questa cosa :) )
ps: ovviamente $INTERVALLO è in giorni

Offline Secursystem

  • Nuovo arrivato
  • *
  • Post: 16
    • Mostra profilo
Re:Articolo "public" che diventa "registered" a tempo
« Risposta #13 il: 23 Lug 2014, 09:08:11 »
Appena lo uso (sono in fase di creazione sito ancora) ti faccio sapere  :)


Grazie di nuovo intanto!


  L

 



Web Design Bolzano Kreatif