Image converter werkt niet als image converter

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Dalando De Zuil

Dalando De Zuil

17/10/2010 20:31:14
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
<?php
if(isset($_GET['imgurl']) && isset($_GET['ext'])){
    if(stristr($_GET['imgurl'], 'http://')){
        $getext = pathinfo($_GET['imgurl']);
        $extfrom = $getext['extension'];
        if($_GET['ext'] == "jpg" || $_GET['ext'] == "png" || $_GET['ext'] == "bmp" || $_GET['ext'] == "gif"){
            if($extfrom == "jpg" || $extfrom == "png" || $extfrom == "bmp" || $extfrom == "gif"){
                if($extfrom == $_GET['ext']){
                    echo 'Image not converted: already that filetype.<br/>';
                }

                else
                {
                    $newext = 0;
                    if($_GET['ext'] == "bmp"){
                        $newext = "image/bmp";
                    }

                    elseif($_GET['ext'] == "png"){
                        $newext = "image/png";
                    }

                    elseif($_GET['ext'] == "jpg"){
                        $newext = "image/jpeg";
                    }

                    elseif($_GET['ext'] == "gif"){
                        $newext = "image/gif";
                    }

                    else{
                        echo 'File type does not match';
                        exit;
                    }

                    header('Content-type: '. $newext);
                    echo file_get_contents($_GET['imgurl']);
                }
            }

            else
            {
                echo 'Input file is not allowed input; jpg, png, bmp, gif.<br/>';
            }
        }

        else
        {
            echo 'Output file is not allowed input; jpg, png, bmp, gif.<br/>';
        }
    }

    else
    {
        echo 'Url is not valid: Must be full URL.<br/>';
    }
        
}
    
else
{
    echo '<form action="" method="get">';
    echo 'Image (url): <input type="text" name="imgurl"/><br/>';
    echo 'To:<br/>
            - <input type="radio" name="ext" value="jpg"/> JPG<br/>'
;
    echo '  - <input type="radio" name="ext" value="png"/> PNG<br/>';
    echo '  - <input type="radio" name="ext" value="bmp"/> BMP<br/>';
    echo '  - <input type="radio" name="ext" value="gif"/> GIF<br/>';
    echo '<input type="submit" value="convert"/><br/>';
    echo 'Allowed input: jpg, png, bmp, gif.<br/>';
    echo '</form>';
}

?>


Deze image converter werkt niet zoals ik het wil. als ik dan een bestand wil opslaan, krijg ik de optie, om deze met dezelfde bestandsextentie op te slaan: wat ik niet wil. Dus hoe kan ik dit weer werkend krijgen? want bij een eerdere poging, werkte deze manier wel... todat ik hem ging uitbreiden. Tevens is dit ook een controle (als ik 'm weer aan de gang kan krijgen), omdat ik hem in de script lib wil zetten, aangezien hier nog geen script voor is.
 
PHP hulp

PHP hulp

28/01/2023 14:24:06
 
Kumkwat Trender

Kumkwat Trender

17/10/2010 20:45:41
Quote Anchor link
Dalando De Zuil op 17/10/2010 20:31:14:
Deze image converter werkt niet zoals ik het wil. als ik dan een bestand wil opslaan, krijg ik de optie, om deze met dezelfde bestandsextentie op te slaan: wat ik niet wil. Dus hoe kan ik dit weer werkend krijgen? want bij een eerdere poging, werkte deze manier wel... todat ik hem ging uitbreiden. Tevens is dit ook een controle (als ik 'm weer aan de gang kan krijgen), omdat ik hem in de script lib wil zetten, aangezien hier nog geen script voor is.


Weet je zeker dat het opnieuw opslaat onder het zelfde naam? Wanttt volgens mij zie ik nergens een functie staan dat het op een andere manier opstlaat..
 
Carlo  boy

carlo boy

17/10/2010 20:48:41
Quote Anchor link
Ik snap je niet, dit script leest een plaatje uit. En maakt er een jpg,png,bmp of gif plaatje van.
Wil je het plaatje dan opslaan?
 
Dalando De Zuil

Dalando De Zuil

17/10/2010 20:52:28
Quote Anchor link
Carlo theunissen op 17/10/2010 20:48:41:
Ik snap je niet, dit script leest een plaatje uit. En maakt er een jpg,png,bmp of gif plaatje van.
Wil je het plaatje dan opslaan?


niet op de webserver, maar wel dat de gebruiker hem kan opslaan op zijn PC.
 
Kumkwat Trender

Kumkwat Trender

17/10/2010 21:00:40
Quote Anchor link
nou een header geef je zo aan:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
header('Content-Type: image/png');
?>


En jij hebt dit staan:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
header('Content-type: '. $newext);
?>


3 keer raden wat jij verkeerd doet ;p
stille hint, kijk de aanhalingstekens
 
Dalando De Zuil

Dalando De Zuil

17/10/2010 21:06:59
Quote Anchor link
Kumkwat Trender op 17/10/2010 21:00:40:
nou een header geef je zo aan:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
header('Content-Type: image/png');
?>


En jij hebt dit staan:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
header('Content-type: '. $newext);
?>


3 keer raden wat jij verkeerd doet ;p
stille hint, kijk de aanhalingstekens


Maakt niks uit.

Heel even dood
Gewijzigd op 17/10/2010 21:07:47 door Dalando De Zuil
 
Carlo  boy

carlo boy

17/10/2010 21:08:09
Quote Anchor link
@Kumkwat Trender kijk eens naar het script. -_-
Hij maakt in $newext de type bestand en toont dat zo in de header...
En dat doe je zo, die aanhalingstekens die toont hij niet....

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
<?php
if(isset($_GET['imgurl']) && isset($_GET['ext']))
{


    if(stristr($_GET['imgurl'], 'http://')) //kijken als http:// erin voorkomt
    {
        $getext = pathinfo($_GET['imgurl']); //deze functie neemt alle informatie van het bestand
        $extfrom = $getext['extension'];    //we zetten de "extension" van het bestand in een virable de exstension is het "soort" bestand bijv. hallo.gif dan is .gif de extension
        $pass  = array("jpg","png","bmp","gif"); //maak een array van de exstensions die toegestaan zijn
        if(!in_array($_GET['ext'],$pass)) //kijk als $_GET['ext'] in de $pass voorkomt
        {
            echo 'Deze exstension wordt niet geaccepteert';
            exit;
        }

        if(!in_array($extfrom,$pass))
        {

            echo 'Het bestand heeft een verkeerde exstension';
            exit;
        }

        if($extfrom == $_GET['ext']) //Kijken als het invoer bestand hetzelfde is al het uitvoer bestand
        {
            echo 'Het invoer bestand mag niet dezelfde exstension hebben als het uitvoer bestand';
            exit;
        }


        switch($_GET['ext'])
        {
            case
"jpg":
                $newext = "image/jpg";
            break;
            
            case
"png":
                $newext = "image/png";
            break;
            
            case
"bmp":
                $newext = "image/bmp";
            break;
            
            case
"gif":
                $newext = "image/gif";
            break;
            default:

                echo 'Er is een error';
                exit;
            break;
                    
        }

            header('Content-type: '. $newext);
            echo file_get_contents($_GET['imgurl']);
            exit;    
  
    }

    else
    {
        echo 'link ongeldig';
    }
}

    echo '<form action="" method="get">';
    echo 'Image (url): <input type="text" name="imgurl"/><br/>';
    echo 'To:<br/>
            - <input type="radio" name="ext" value="jpg"/> JPG<br/>'
;
    echo '  - <input type="radio" name="ext" value="png"/> PNG<br/>';
    echo '  - <input type="radio" name="ext" value="bmp"/> BMP<br/>';
    echo '  - <input type="radio" name="ext" value="gif"/> GIF<br/>';
    echo '<input type="submit" value="convert"/><br/>';
    echo 'Allowed input: jpg, png, bmp, gif.<br/>';
    echo '</form>';

?>

De gebruiker kan het plaatje opslaan door op ctrl+s te klikken, of met de rechtermuisknop op het plaatje te klikken en dan als opslaan als te kiezen
Gewijzigd op 17/10/2010 21:12:16 door carlo boy
 
Kumkwat Trender

Kumkwat Trender

17/10/2010 21:09:17
Quote Anchor link
Jaa ugghh,
heb je nou niets veranderd?

Doe eens dit:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
header("'Content-type: ". $newext."'");
?>
 
Dalando De Zuil

Dalando De Zuil

17/10/2010 21:11:23
Quote Anchor link
Carlo theunissen op 17/10/2010 21:08:09:
@Kumkwat Trender kijk eens naar het script. -_-
Hij maakt in $newext de type bestand en toont dat zo in de header...
En dat doe je zo, die aanhalingstekens die toont hij niet....

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
<?php
if(isset($_GET['imgurl']) && isset($_GET['ext']))
{

    if(stristr($_GET['imgurl'], 'http://')) //kijken als http:// erin voorkomt
    {
        $getext = pathinfo($_GET['imgurl']); //deze functie neemt alle informatie van het bestand
        $extfrom = $getext['extension'];    //we zetten de "extension" van het bestand in een virable de exstension is het "soort" bestand bijv. hallo.gif dan is .gif de extension
        $pass  = array("jpg","png","bmp","gif"); //maak een array van de exstensions die toegestaan zijn
        if(!in_array($_GET['ext'],$pass)) //kijk als $_GET['ext'] in de $pass voorkomt
        {
            echo 'Deze exstension wordt niet geaccepteert';
            exit;
        }

        if(!in_array($extfrom,$pass))
        {

            echo 'Het bestand heeft een verkeerde exstension';
            exit;
        }

        if($extfrom == $_GET['ext']) //Kijken als het invoer bestand hetzelfde is al het uitvoer bestand
        {
            echo 'Het invoer bestand mag niet dezelfde exstension hebben als het uitvoer bestand';
            exit;
        }

        
        switch($_GET['ext'])
        {
            case
"jpg":
                $newext = "image/jpg";
            break;
            
            case
"png":
                $newext = "image/png";
            break;
            
            case
"bmp":
                $newext = "image/bmp";
            break;
            
            case
"gif":
                $newext = "image/gif";
            break;
            default:

                echo 'Er is een error';
                exit;
            break;
            
            header('Content-type: '. $newext);
            echo file_get_contents($_GET['imgurl']);             
        }

  
    }
}

?>

De gebruiker kan het plaatje opslaan door op ctrl+s te klikken, of met de rechtermuisknop op het plaatje te klikken en dan als opslaan als te kiezen


Daar gaat het hele idee van een 'eigen' script in de script lib zetten :| affijn, er moet toch nog wat aangebeuren...

Toevoeging op 17/10/2010 21:14:07:

Alleen faalt dat wel, want het geeft een lege pagina terug.
 
Carlo  boy

carlo boy

17/10/2010 21:14:26
Quote Anchor link
gebruik hem gewoon niet, er zit een fout in. Heb hem eruit gehaalt in mijn vorige post. Zoek hem maar :).

Maar: ik heb het idee van jou helemaal overgenomen ik heb hem gewoon wat netter neergezet. Jij hebt 90% gemaakt ik heb hem gewoon wat aangepast

EDIT: Je bent er blijkbaar al achter gekomen
Gewijzigd op 17/10/2010 21:15:14 door carlo boy
 
Dalando De Zuil

Dalando De Zuil

17/10/2010 21:23:35
Quote Anchor link
@Carlo, ik heb gezien wat fout was gegaan ( '}' vergeten ), maar zelfs je nieuwe script werkt ook niet?
 
Carlo  boy

carlo boy

17/10/2010 21:26:40
Quote Anchor link
werkt mijn nieuwe script niet?? Bij mij werkt hij uitstekent.
Nee ik had geen } vergeten in had
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
            header('Content-type: '. $newext);
            echo file_get_contents($_GET['imgurl']);
?>

in de switch staan :) dan doet hij het niet.

Toevoeging op 17/10/2010 21:27:38:

@Kumkwat Trender, ik snap je niet die header gaat toch goed??
 
Dalando De Zuil

Dalando De Zuil

17/10/2010 21:42:47
Quote Anchor link
@carlo Bij mij niet... welke PHP versie heb je?
 
Carlo  boy

carlo boy

17/10/2010 23:02:14
Quote Anchor link
PHP Version 5.3.1
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.