Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2002
    Messaggi
    57

    Generare 3 immagini prelevando 3 valori diversi

    Ciao avevo inserito questo script nell' altro post e non vuole essere un duplicato solo che crede sia opportuno cambiare nome al post visto che la funzione richiesta è diversa :

    come modificare questo script al fine di far generare 3 immagini con nome diverso
    ( img1.png , img2.png , img3.png )
    e che ognuna contenga i valori dei
    ( $dati, $dat2, $dati3 )

    Codice PHP:
    // valore testo
    $dati = ("$valore1[2]"); // dati da tabelle diversa
    $dati2=  ("$valore2[2]");  // dati da tabelle diversa
    $dati3=  ("$valore3[2]"); // dati da tabelle diversa

    // colore sfondo 
     
    if($dati >&& $dati<10 ){
    $r127$g255$b212
    $r1255;  $g1255$b1255;

    if(
    $dati >10 && $dati20 ){
    $r124;  $g252;  $b0
    $r1255;  $g1255$b1255;

    .
    .
    .
    .
    // colore testo


    // crea immagine 50*15 
    $im imagecreate(5015);
    // sfondo all' immagine 
    $background imagecolorallocate($im$r$g$b);
    // testo color bianco
    $textcolor imagecolorallocate($im$r1$g1$b1);
    imagestring($im240$dati$textcolor);

    //Creamo un'immagine .PNG
    header("Content-type: image/jpeg");
    imagejpeg($im);
    imagejpeg($im"img.png");
    //Finiamo con il distruggere l'immagine temporanea 
    imagedestroy($im); 

  2. #2
    Forse intendi una cosa di questo tipo, usando un loop ed un array per $dati anzichè tre scalari:

    Codice PHP:
    // valore testo 
    $dati[1] = ("$valore1[2]"); // dati da tabelle diversa 
    $dati[2]=  ("$valore2[2]");  // dati da tabelle diversa 
    $dati[3]=  ("$valore3[2]"); // dati da tabelle diversa 

    // colore sfondo  



    // colore testo 

    for($i=1;$i<3;$i++){
    // crea immagine 50*15  
    $im imagecreate(5015); 
    // sfondo all' immagine  
    $background imagecolorallocate($im$r$g$b); 
    // testo color bianco 
    $textcolor imagecolorallocate($im$r1$g1$b1); 
    imagestring($im240$dati[$i], $textcolor); 

    //Creamo un'immagine .PNG 
    header("Content-type: image/jpeg"); 
    imagejpeg($im"img".$i.".png"); 
    //Finiamo con il distruggere l'immagine temporanea  
    imagedestroy($im);

    Tecnolgie per l'arte.
    Arti per la tecnologia.
    softhare

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2002
    Messaggi
    57
    dove sto sbagliando non sta funzionando, ti posto l' intero script,
    non crea le immagini con i relativi dati.

    Codice PHP:
    <?php
    //leggo i datidal fle
    $percorso_file1 = ('dati1.txt'); 
    $file1 fopen($percorso_file1,rb); 
    $riga1 fread($file1,1024); 
    $valore1 explode(";",$riga1); fclose($file1); 

    $percorso_file2 = ('dati2.txt'); 
    $file2 fopen($percorso_file2,rb); 
    $riga2 fread($file2,1024); 
    $valore2 explode(";",$riga2); fclose($file2); 

    // ci possono essere anche altri dati da leggere.

    for($i=1;$i<2;$i++){

    if(
    $valore[$i]>10 && $valore[$i]<-19.9 ){
    $r0$g191$b255;
    $r1255$g1255$b1=255 ;
    }
    if(
    $valore[$i]>20 && $valore[$i]<29.9 ){
    $r175$g238$b238
    $r1255$g1255$b1=255 ;

    if(
    $valore[$i]>30 && $valore[$i]<39.9 ){
    $r127$g255$b212
    $r10$g10$b10
    }
    if(
    $valore[$i]>40 && $valore[$i]<49.9 ){
    $r124$g252$b0;
    $r10$g10$b1=

    if(
    $valore[$i]>50 && $valore[$i]<59.9 ){
    $r255$g255$b224;
    $r10$g10$b1=;  

    if(
    $valore[$i]>60 && $valore[$i]<69.9 ){
    $r255$g255$b0
    $r10$g10$b1=

    if(
    $valore[$i]>70 && $valore[$i]<79.9 ){
    $r255$g215$b0
    $r10$g10$b1=

    if(
    $valore[$i]>80 && $valore[$i]<89.9 ){
    $r210$g105$b30
    $r10$g10$b1=

    if(
    $valore[$i]>90 && $valore[$i]<99.9 ){
    $r255$g0$b0
    $r10$g10$b1=


    // crea immagine 50*15  
    $im imagecreate(5015); 
    // sfondo all' immagine  
    $background imagecolorallocate($im$r$g$b); 
    // testo color bianco 
    $textcolor imagecolorallocate($im$r1$g1$b1); 
    imagestring($im240$valore[$i], $textcolor); 

    //Creamo un'immagine .PNG 
    header("Content-type: image/jpeg");
    imagejpeg($im); 
    imagejpeg($im"img".$i.".png"); 
    //Finiamo con il distruggere l'immagine temporanea  
    imagedestroy($im);
    }
    ?>

  4. #4
    Nelle prime righe inizializzi gli array $valore1 e $valore2, mentre in seguito leggi da $valore.

    Dal tuo codice non si capisce se le variabili $valore ($valore1 e $valore2) siano numeriche (usate per scegliere i colori) oppure la stringa da inserire nella immagine.

    Puoi provare a sostituire $valore1=... con $valore[1]=.... ed analogamente $valore2 con $valore[2].


    Secondariamente, non puoi inviare più di un header nè più di un imagejpeg($im); in una unica pagina.
    Dovrai spostare l'header fuori dal loop ed inviare in output solo una delle immagini (es: passthru("img1.png"); ).


    Ci sono poi alcune cose inutili/sbagliate.

    Ad esempio la istruzione $background = imagecolorallocate($im, $r, $g, $b); non serve a nulla se poi il colore definito in $background non lo usi in nessun modo.

    Poi manca qualsiasi controllo di validità di $file1, $file2 ed $im.
    Tecnolgie per l'arte.
    Arti per la tecnologia.
    softhare

  5. #5
    Utente di HTML.it
    Registrato dal
    Mar 2002
    Messaggi
    57
    mi dai una mano a corregere lo scipt,
    non sono bravo sono alle prime armi

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.