<form method="GET" action="testi.php"> <input type="radio" name="sininen" value="96, 96, 96">Harmaa<br> <input type="radio" name="sininen" value="255, 0, 0">Punainen<br> <input type="radio" name="sininen" value="0, 255, 0">Vihreä<br> <input type="radio" name="sininen" value="0, 0, 255">Sininen<br> <input type="submit" value="Tee!"> </form>
$sininen = array($kuva, 0, 255, 0); if (isset($_GET['sininen'])) $sininen = explode('_',$_GET['sininen']); $nimi = imagecolorallocate ($kuva, $sininen[0], $sininen[1], $sininen[2]);
Tuo php-koodi hakee värin ylinnä olevasta lomakkeesta, mutta se ottaa vain ensimmäisen luvun, jolloin tekstistä tulee aina punasävyinen, missä vika että ei ota koko rgb:tä? Olen kaikenlaista yrittänyt mutta mikään ei tunnu onnistuvan..
Varmista, että $sininen-taulukon sisältö on oikea hetkeä ennen imagecolorallocaten kutsumista. Nopeasti katsottuna vika voisi olla siinä, että käytät explode-funktiossa erottimena alaviivaa, mutta luvut on todellisuudessa erotettu pilkulla ja välilyönnillä.
Sehän se siinä olikin vikana..
Kiitoksia avusta!
Aihe on jo aika vanha, joten et voi enää vastata siihen.