Navigazione

    Privacy - Termini e condizioni
    © 2020 Search On Media Group S.r.l.
    • Registrati
    • Accedi
    • CATEGORIES
    • Discussioni
    • Non letti
    • Recenti
    • Hashtags
    • Popolare
    • Utenti
    • Stream
    • Interest
    • Categories
    1. Home
    2. tarantallegra
    3. Post
    T

    tarantallegra

    @tarantallegra

    • Profilo
    • Chi segue 0
    • Da chi è seguito 0
    • Discussioni 6
    • Post 11
    • Migliore 0
    • Gruppi 0
    Iscrizione Ultimo Accesso
    Sito Internet www.hpquiz.it Località Genova Età 41
    0
    Reputazione
    11
    Post
    0
    Visite al profilo
    0
    Da chi è seguito
    0
    Chi segue
    User

    Post creati da tarantallegra

    • Validazione form di radio buttons

      Ciao a tutti,
      mi sto spaccando la testa per validare dei radio buttons in un form.

      Questo form non è altro che un questionario medico formato da un numero N di domande ciascuna delle quali ha 4 possibili risposte che hanno valore 0,1,2,3. Lo script fa una somma dei value ogni volta che un radio button viene selezionato e al click di un button viene mostrato il risultato prima nascosto in un div (somma).

      Lo script è questo:

      
      window.onload = function()
      {
         var opzioni = document.getElementById('opzioni')
         var opzioni_inputs = opzioni.getElementsByTagName('input')
         var opzioni_inputs_radios = new Array()
            for (var i = 0; i < opzioni_inputs.length; i++)
            {
               if ( opzioni_inputs.item(i).getAttribute('type') == 'radio' )
               {
                  opzioni_inputs_radios.push(opzioni_inputs.item(i))
               }
            }
         var invio = document.getElementById('invio')
         var somma = document.getElementById('somma')
      
         function elenco_selezioni()
         {
            var selezionati = new Array()
            for (var i = 0; i < opzioni_inputs_radios.length; i++)
            {
               if ( opzioni_inputs_radios*.checked )
               {
                  selezionati.push(opzioni_inputs_radios*)
               }
            }
            return selezionati
         }
         function sommatoria(campi)
         {
            var totale = 0
            for (var i = 0; i < campi.length; i++)
            {
               totale += parseInt(campi*.value)
            }
            return totale
         }
         function scrivi_totale(valore)
         {
            somma.innerHTML = ''
            somma.innerHTML = 'Il tuo risultato è '
            somma.innerHTML += valore
         }
      
         for (var i = 0; i < opzioni_inputs_radios.length; i++)
         {
            opzioni_inputs_radios*.onchange = function()
            {
               var campi_selezionati = elenco_selezioni()
               var totale_somma = sommatoria(campi_selezionati)
               scrivi_totale(totale_somma)
            }
         }
         scrivi_somma(0)
         
      }
      
      ```Mi è stato chiesto di rendere obbligatorie le 5 risposte e sto provando invano da ore... qualcuno mi può dare un suggerimento?
      
      Grazie
      Chiara
      postato in Coding
      T
      tarantallegra
    • Recuperare variabili da un form generato con while

      Ciao a tutti,
      sto creando uno script per inserire un quiz diverso al giorno sul mio sito. Ogni giorno viene visualizzata una domanda presa da una tabella del mio database, gli utenti registrati possono rispondere e la loro risposta viene registrata (insieme al loro nome e numero utente) nella tabella daily_record.

      A questo punto un membro dello staff accede alla pagina attribuiscipunti.php per verificare se la risposta alla domanda è esatta e per attribuire ai primi 5 utenti che hanno risposto correttamente un punteggio da 10 a 1 secondo l'ordine di risposta.

      Ho un problema nel recupero delle variabili del form nella pagina attribuiscipunti.php

      [php]
      <?
      $table = "daily_record";
      include("contentdb.php");
      echo "<table><tr><td>";
      echo "<table>";
      echo "<tr><td>Id</td><td>Nome</td><td>Risposta</td><td>Punti</td></tr>";
      echo "<form method=post action=addscore.php>";
      $result = mysql_query("SELECT id, uid, name, answer FROM $table ORDER BY id",$db);
      while ($row = mysql_fetch_array($result))
      { $id = $row["id"];
      $uid = $row["uid"];
      $name = $row["name"];
      $answer = $row["answer"];
      echo "<tr><td>$uid</td><td>$name</td><td>$answer</td><td><select type=text name=score$id><option value=0>0</option><option value=1 >1</option><option value=2>2</option><option value=4 >4</option><option value=6>6</option><option value=10 >10</option></select></td></tr><input type=hidden name=uid$id value=$uid><input type=hidden name=name$id value=$name></td></tr>";
      }
      echo "</table>";
      echo "<input type=hidden name=row value=$row>";
      echo "<input type=submit name="submit" value="Add Scores"></td></tr>\n";
      echo "</table>";
      ?>
      [/php]

      Il form così generato mi permette di avere una tabella in cui ogni riga è un record.
      Vorrei riuscire a recuperare le variabili
      uid$i, name$uid, score$uid
      per riuscire a salvare in una nuova tabella (classifica) il nome e il punteggio dei primi cinque.
      Come posso recuperare le variabili dell'array?

      Ho provato a scrivere questo... non credo abbia molto senso... e in effetti non funziona.

      addscore.php
      [php]
      <?
      $row = $_POST["row"];
      echo $row;
      // recupera le variabili
      for($i=0; $i<$row; $i++)
      {
      $uid* = $_POST["uid$id"];
      $name* = $_POST["name$id"];
      $score* = $_POST["score$id"];
      }
      for ($i=0; $i<$row; $i++)
      {
      echo "uid: $uid*; nome: $name*; punti: $score*";
      }
      ?>
      [/php]

      Qualcuno ha da suggerirmi un metodo?
      Grazie mille a tutti

      Chiara

      postato in Coding
      T
      tarantallegra
    • RE: Sito multilingue

      Grazie ragazzi per l'aiuto! Alla fine ci sono riuscita usando un cookie e facendo qualcosa di simile a quello che mi ha suggerito probid. Metto qui il codice in caso qualcuno ne avesse bisogno:

      Ho fatto una pagina (setlanguage.php) per impostare un cookie:

      [PHP]
      <?
      $lang = $_GET['set'];
      $referer = $_SERVER['HTTP_REFERER'];
      header("Location: $referer");
      setcookie("language", $lang, time()+43200, '/');
      header("Location: $referer");
      ?>
      [/PHP]

      e nell'header (che viene inclusa in ogni pagina) ho messo questo codice:

      [PHP]
      <?
      $LANG=$_COOKIE['language'];
      $lingua= "language/$LANG.php";
      $default= "language/english.php";
      if(!$LANG){
      require_once "$default";
      }else{
      require_once "$lingua";
      }
      ?>
      [/PHP]

      Ho messo poi delle bandierine con link a http://miosito.it/setlanguage.php?set=italian ecc...
      Così funziona perfettamente!

      Grazie a tutti e buon lavoro!

      Chiara

      postato in Coding
      T
      tarantallegra
    • Sito multilingue

      Ciao a tutti,
      sto preparando un piccolo sito (appena 6 pagine) che vorrei proporre in diverse lingue.
      Proprio perchè i contenuti sono pochi ho creato una cartella language nella quale ho preparato un file php per ogni lingua (italian.php, french.php, english.php) nel quale ho inserito le definizioni delle variabili che ho usato per "riempire" le varie pagine.

      Sto cercando un modo per modificare la stringa:

      [php]<?
      require_once('language/italian.php');?>[/php]

      che ho messo in header.php che viene incluso in ogni pagina.

      Qualcuno ha qualche idea?
      Ho provato a fare come suggerito qui per cambiare CSS (http://atomsurfer.altervista.org/xhtml_e_css/cambiare_css_php.php) ma non funziona (forse perchè il quel caso si tratta di una stringa html e io devo modificare una stringa php?).

      Grazie 😄

      postato in Coding
      T
      tarantallegra
    • Crea immagine con imagepng

      Ciao a tutti, ho creato un piccolo script per generare dei fumetti personalizzati. In pratica ho diverse immagini con personaggi e fumetti, con un form in html gli utenti possono scrivere una frase che viene poi "stampata" nel fumetto.
      A questo punto creo l'immagine con imagepng().
      Fin qui tutto bene, salvo l'immagine nel server e restituisco all'utente il link o il codice che può usare per mostrare l'immagine nel forum o nella sua firma.

      Mi è sorto un dubbio... se l'utente ogni volta che fa una prova salva un'immagine nel server in poco tempo la cartella si ritroverà piena di immagini inutilizzate.

      Vorrei allora modificare un pò il codice in modo da mostrare un'anteprima prima di salvare l'immagine nel server.

      Al momento sto usando questo codice

      [php]<?
      //legge l'immagine scelta nel form:
      $_POST['img'] = $img;
      $im = imagecreatefrompng("$img");
      // in caso di errore ferma lo script:
      if(!$im)
      {
      die("");
      }
      // definisce il colore del testo
      $black = imagecolorallocate($im, 0x00, 0x00, 0x00);
      // stabilisci dimensioni delle immagini
      $width = imagesx($im);
      $height = imagesy($im);
      //crea testo:
      $font = 3;
      $_POST['text1'] = $text1;
      $_POST['text2'] = $text2;
      $_POST['text3'] = $text3;
      $_POST['text4'] = $text4;
      $_POST['text5'] = $text5;
      //rendi testo maiuscolo
      $TEXT1 = strtoupper($text1);
      $TEXT2 = strtoupper($text2);
      $TEXT3 = strtoupper($text3);
      $TEXT4 = strtoupper($text4);
      $TEXT5 = strtoupper($text5);
      // scrive il testo:
      imagestring($im, $font, 124, 62, $TEXT1, $black);
      imagestring($im, $font, 95, 76, $TEXT2, $black);
      imagestring($im, $font, 88, 92, $TEXT3, $black);
      imagestring($im, $font, 93, 108, $TEXT4, $black);
      imagestring($im, $font, 115, 122, $TEXT5, $black);
      // crea immagine
      // formato immagine
      Header('Content-type: image/png');
      //crea un nome random per l'immagine
      $name = md5(rand() * time());
      // salva l'immagine
      imagepng($im, "http://www.giorgiotave.it/forum/images/$name.png");
      //mostra immagine e codice
      echo "<img src=http://miosito/images/$name.png>";
      $textarea = "<textarea rows=3 col=45>[img]http://miosito/images/$name.png[/img]</textarea>";
      echo stripslashes ($textarea);
      ?>[/php]

      Ho pensato di sostituire
      [php]// salva l'immagine
      imagepng($im, "http://www.giorgiotave.it/forum/images/$name.png");
      //mostra immagine e codice
      echo "<img src=http://miosito/images/$name.png>";
      $textarea = "<textarea rows=3 col=45>[img]http://miosito/images/$name.png[/img]</textarea>";
      echo stripslashes ($textarea);
      ?>[/php]

      con qualcosa di simile

      [php]// output the image as a png
      $salva = imagepng($im);
      echo "<form method=post action=getimage.php><input type=hidden name=img value=$img><input type=hidden name=text1 value=$TEXT1><input type=hidden name=text2 value=$TEXT2><input type=hidden name=text3 value=$TEXT3><input type=hidden name=text4 value=$TEXT4><input type=hidden name=text5 value=$TEXT5><input type=submit value=genera codice></form>";
      ?>[/php]

      e mettere in getimage.php il comando per salvare l'immagine, ma non mi viene stampato il bottone sotto l'immagine... Come mai?

      Cosa ho sbagliato?

      Spero di essere riuscita a spiegarmi bene, in caso contrario ditemelo che proverò a farlo meglio!

      Grazie
      Chiara

      postato in Coding
      T
      tarantallegra
    • RE: Risultato query: Resource id #

      Grazie enormemente... funziona alla perfezione :campione:

      Ne approfitto per chiederti un'ultima delucidazione.
      Nella parte del codice relativa al contenuto della textarea non ho potuto usare le normali parentesi quadre.
      Avevo da subito provato a farle precedere da un backslash come per le virgolette. Ma nel risultato venivano stampate anche le backslash.
      Allora ho sostituito le parentesi con & #91; e & #93; (senza spazi)

      è corretto? o esiste un modo più elegante?

      Un ultimo grazie... :oregonian_martini: Alla tua!

      Chiara

      p.s. da grande voglio essere come te 😉

      postato in Coding
      T
      tarantallegra
    • RE: Risultato query: Resource id #

      Ciao Probid,
      innanzitutto grazie mille per la disponibilità e la rapidità.
      Ho provato a fare la modifica che mi hai suggerito e a questo punto il risultato che ottengo è Array.

      Cerco di spiegare meglio cosa deve fare $qry!
      La mia tabella userpage contiene tra gli altri due campi up_pageid e up_uid. Il campo up_id contiene di id degli utenti che hanno creato una pagina personale, il campo up_pageid è quello che contiene l'id della pagina (un numero crescente).
      Il mio problema è che quando l'utente chiede il codice devo aggiungere in fondo all'URL l'ID della sua pagina personale.
      Per fare questo ho pensato di richiamare l'id dell'utente loggato e con la query $qry verificare se l'utente ha creato una pagina e quindi estrarre per l'id dell'utente l'id della pagina personale corrispondente.

      A parte la questione if... che proverò a risolvere in seguito. Vorrei intanto provare a risolvere questo primo problema.

      Spero di essere riuscita a spiegarmi meglio... sono un pò fusa 🙂 ci ho lavorato tutto il pomeriggio... non sono esperta di php, uso xoops come cms ma mi è capitato qualche volta di avere la necessità di creare piccoli script come questo.

      Ancora grazie mille!
      Chiara

      postato in Coding
      T
      tarantallegra
    • Risultato query: Resource id #

      Ciao a tutti,
      sto provando a scrivere un piccolo script per generare un codice in una textarea che permetta agli utenti del mio sito di copiare e incollare nella propria firma il codice bello pronto di un'immagine linkata alla loro pagina personale. Il codice è di questo tipo

      [html][url=http://www.miosito/paginepersonali/index.php?up_pageid=$personalpage][/html]

      Per ottenere ciò ho preparato un form in html che mostra le possibili immagini a ciascuna delle quali è associato un input radio che ha come value l'URL dell'immagine. Quando l'utente clicca sul pulsante di invio viene richiamato un file php con questo codice.

      [php]<?php
      include("../../mainfile.php");
      include(XOOPS_ROOT_PATH."/header.php");
      $logid = $xoopsUser->getVar("uid");
      $_POST['banner'] = $banner;
      $qry="SELECT up_pageid FROM xoops_userpage WHERE up_uid=$logid";
      $personalpage=mysql_query($qry);
      $textarea = "<textarea>[url=http://miosito/paginepersonali/index.php?page_id=$personalpage]</textarea>";
      echo $textarea;
      echo "user id $logid";
      echo "personalpage $personalpage";
      include(XOOPS_ROOT_PATH."/footer.php");
      ?>[/php]

      Tralasciando le prime righe che occorrono per inserire la pagina nel sito (fatto con Xoops)...
      Viene definito $logid e viene richiamata l'immagine scelta $banner.
      A questo punto viene eseguita una query che vada a cercare $logid nella tabella userpage e che estragga dal campo up_pageid il valore corrispondente. A questo punto viene stampato il codice nella textarea.

      Il problema è che deve esserci qualche errore nella query perchè il risultato che ottengo per $personalpage è Resource id#399!

      Non riesco a capire dove sia l'errore...
      Nella tabella userpage il campo up_uid contiene l'id dell'utente e il campo up_pageid è un contatore autoincrement.

      Qualcuno mi può aiutare?

      Grazie
      Chiara

      postato in Coding
      T
      tarantallegra
    • RE: Classifica con somma punteggi

      Se nel futuro cercando qualcosa di simile qualcuno arrivasse al mio post metto qui la soluzione che ho trovato.

      $ctime = time();
      $qry="SELECT score FROM ".$xoopsDB->prefix("myquiz_scoreboard")." WHERE username='$logname'";
      $res=mysql_query($qry);
      mysql_num_rows($res)>0 ? $rws=mysql_fetch_row($res) : $rws=0;
      
      if($rws) {
         $sommapunteggio=$rws[0]+$score;
         $qry2="UPDATE ".$xoopsDB->prefix("myquiz_scoreboard")." SET score='$sommapunteggio' WHERE 
      
      username='$logname'";
         mysql_query($qry2);
      } else (!$xoopsDB->query("INSERT INTO ".$xoopsDB->prefix("myquiz_scoreboard")." VALUES ('$logname','$score')"));
      

      Grazie a tutti
      Chiara

      postato in Coding
      T
      tarantallegra
    • RE: Classifica con somma punteggi

      Ciao Massy,
      grazie mille per la risposta! Ho provato a cercare nel manuale php come fare quello che mi hai scritto... il mio problema è che non ho mai fatto niente di simile e che quel pezzo di script che sono riuscita a fare l'ho modificato a partire da uno esistente (sono stata la prima a stupirmi del fatto che funzionasse!). :lol:
      Saresti così gentile da scrivermi in pratica lo script da aggiungere?
      Grazie, scusa il disturbo
      Chiara :bho:

      postato in Coding
      T
      tarantallegra
    • Classifica con somma punteggi

      Buongiorno a tutti,
      avrei bisogno di un piccolo aiuto nella scrittura di un comando php.

      Ho un sito xoops con un modulo per quiz (Myquiz). Vorrei aggiungere una classifica generale che ordini gli utenti iscritti sommando tutti i loro risultati ai quiz.

      I risultati vengono salvati in una tabella nel mio db mysql (viene registrato username, id, id del quiz e altre informazioni). Nella classifica generale mi interessa solo l'username e il punteggio. Così ho preparato una tabella myquiz_scoreboard nella quale ho messo due campi: username e score.

      Quando viene compilato il quiz, lo script inserisce il risultato anche in questa nuova tabella. Ora... Visto che grazie a precedenti impostazioni l'utente più rispondere ad ogni quiz una sola volta, vorrei aggiungere qualche riga che mi permetta di sommare il punteggio se l'username è già presente nella tabella myquiz_scoreboard.

      Esempio:

      tabella myquiz_scoreboard:

      username score

      chiara 5
      michela 8
      picaciu 4

      Se ora picaciu (che ha già risposto ad un quiz e ha totalizzato 4 punti... poverino...) compila un nuovo quiz e totalizza 6 punti, può lo script dire al db:
      guarda se l'username picaciu c'è già e in quel caso somma 6 al suo precedente score?

      Spero di essere stata chiara...

      Questo è il pezzo di script che ho aggiunto per registrare i risultati nella tabella scoreboard. è quello che penso andrà modificato...

      # inserisci nella classifica
              $ctime = time();
              if(!$xoopsDB->query("INSERT INTO ".$xoopsDB->prefix("myquiz_scoreboard")." VALUES ('$logname','$score')"))
              {
                      echo $xoopsDB->errno(). ": ".$xoopsDB->error(). "<br>";
                      return;
              }
      

      grazie

      Chiara

      postato in Coding
      T
      tarantallegra