Hello Ludzie Oto mój kod

echo('Name: <input type="text" id="Name" onchange="im()" value="your name"  name="Name" />');
echo('pointsize: <input type="text" id="pointsize" onchange="im()" value="50" name="pointsize" />');
echo('format: <input type="text" id="format" value=".gif" onchange="im()" name="format" />');
echo('BackGround Color: <input type="text" id="bckclr" value="red" onchange="im()" name="bckclr" />');
echo('FontColor: <input type="text" id="color" value="white" onchange="im()" name="color" />');
echo('Border Color: <input type="text" id="bcolor" value="blue" onchange="im()" name="bcolor" />');
echo('<a href="./lang/ims.php"><img src="'.$image.'" height="82" width="82" /></a>');
echo('Font: <input type="text" id="font" value="'.$image1.'" onchange="im()" name="font" />');

echo ('<div id="Div_Im">');
echo('replace me');
echo ('</div>');

Oto mój kod ajax.

<Script type="text/javascript">
    function im()
    {
        var Name=document.getElementById("Name").value;
        var pointsize=document.getElementById("pointsize").value;
        var format=document.getElementById("format").value;
        var bckclr=document.getElementById("bckclr").value;
        var color=document.getElementById("color").value;
        var bcolor=document.getElementById("bcolor").value;
        var font=document.getElementById("font").value;
        $(document).ready(function(){
            var url='Name='+Name+'&pointsize='+pointsize+'&format='+format+'&bckclr='+bckclr+'&color='+color+'&bcolor='+bcolor+'&font='+font;
            alert(url);
            //-----Sending request to server for getting job name list by ajax-----
            $.ajax({
                type    : "POST",
                url : "i.php?",
                data    : url,              
                cache   : false,
                success : function(html)
                {
                    //document.getElementById('Div_PJobId').style.display="block";
                    //alert('hi');
                    alert(html);
                    var pic='<img src="'+html+'">';
                    $("#Div_Im").html(pic).show();
                }
            });
        });
     }
</script>

A oto mój kod strony serwera dla I.php

$Name=$_POST["Name"];
$pointsize=$_POST["pointsize"];
$bckclr=$_POST["bckclr"];
$color=$_POST["color"];
$bcolor=$_POST["bcolor"];
$format=$_POST["format"];
//$filename = "./lang/sri".$format;
$filename = "./lang/".$Name.$format;
$font=$_POST["font"]; 

$cmd = " -background $bckclr -pointsize $pointsize -font $font -fill $color ".
            " -strokewidth 1 -stroke $bcolor label:\"$Name\" ";

exec("convert $cmd $filename");
//if($filename)
//{}
//echo('<img src="'.$filename.'">');
echo $filename;

Sprawdź Link demo. Zawartość (obraz pokazany w) zastępuje tylko wtedy, gdy wprowadzam zmiany w nazwie, ale nie działa dla koloru, boleń, czcionki, ... Muszę odświeżyć stronę za każdym razem, gdy wprowadzam zmiany .... jest tam sposób naprawienia tego problemu?

0
Friend 21 wrzesień 2012, 14:37

2 odpowiedzi

Najlepsza odpowiedź

Debugowałem swój kod i stwierdziłem, że każda rzecz działa dobrze na stronie klienta, jak na każdej zmianie (w wejściu) dzwonisz do serwera za pomocą najnowszych danych i wymiana obrazu na podstawie HTML, który otrzymujesz z serwera.

Wierzę, że jest problem z kodem serwera serwera. Gdy widziałem, przypisując nazwę, aby utworzyć plik obrazu za pomocą wartości pola Nazwa. Oznacza to, że nazwa pliku obrazu już utworzonego dla zmiany kolorów jako nazwa jest już dostarczona. Powinieneś wyrazić swój kod boczny serwera. Pewna odpowiedź czasu przyjmuje nieskończony czas, aby powrócić z serwera.

0
Anoop 21 wrzesień 2012, 10:54
  1. Owinadłeś $(document).ready Funkcja w funkcji im(). Dlaczego tak jest?
  2. Dlaczego nie użyłeś jquery za uzyskanie wartości wejściowych?

    function im() { 
    
    $.ajax({ 
       type: "POST", 
       url: "i.php?", 
       data: {
             Name:$('#Name').val(), 
             pointsize:$('#pointsize').val(),
             format:$('#format').val(),
             bckclr:$('#bckclr').val(),
             color:$('#color').val(),
             bcolor:$('#bcolor').val(),
             font:$('#font').val()   
       },               
       cache: false
    }).done(function(html) { 
    
            //document.getElementById('Div_PJobId').style.display="block"; 
            //alert('hi'); 
            alert(html); 
            var pic='<img src="'+html+'">'; 
            $("#Div_Im").html(pic).show(); 
    
    }); 
    }
    
0
Mihai Matei 21 wrzesień 2012, 10:55