Formularz i skrypt wykonywany na tej samej stronie - Wersja do druku
+- Forum Webmastera, HTML, CSS, PHP, MySQL, Hosting, Domeny - Forum dla Webmasterów (https://www.webmastertalk.pl)
+-- Dział: Technologie internetowe - tworzenie stron WWW (https://www.webmastertalk.pl/forum-technologie-internetowe-tworzenie-stron-www)
+--- Dział: Programowanie, Bazy danych (https://www.webmastertalk.pl/forum-programowanie-bazy-danych)
+--- Wątek: Formularz i skrypt wykonywany na tej samej stronie (/thread-formularz-i-skrypt-wykonywany-na-tej-samej-stronie)
|
Formularz i skrypt wykonywany na tej samej stronie - benny - 08-05-2011
Witam,
Chodzi mi o kwestię następującą:
Mam formularz, który ma kilka inputów do których jQuery przy pomocy ich wartości zapisuje pewne dane.
Chciałbym, aby po kliknięci w przycisk, wykonał się skrypt do których te dane są potrzebne i przeniósł mnie na następną stronę, np. za pomocą header.
Kod mam następujący:
Kod: <? if (!isset($_POST['next'])) { ?>
<script type="text/javascript" src="/modules/baner/client/jquery.imgareaselect.pack.js"></script>
<link rel="stylesheet" type="text/css" href="/resources/css/imgareaselect.css" />
<script>
function preview(img, selection) {
var widthNormal = $('#uploaded').width();
var heightNormal = $('#uploaded').height();
var scaleX = 654 / selection.width;
var scaleY = 231 / selection.height;
$('#preview img').css({
width: Math.round(scaleX * widthNormal),
height: Math.round(scaleY * heightNormal),
marginLeft: -Math.round(scaleX * selection.x1),
marginTop: -Math.round(scaleY * selection.y1)
});
$('#x1').val(selection.x1);
$('#y1').val(selection.y1);
$('[name=w]').val(widthNormal);
$('[name=h]').val(heightNormal);
}
$(document).ready(function () {
$('img#uploaded').imgAreaSelect({
maxWidth: 654,
maxHeight: 231,
minWidth: 654,
minHeight: 231,
resizable: false,
handles: false,
onSelectChange: preview
});
});
</script>
<div class="desk-all-container">
<? include $menu ?>
<div class="profile-container">
<div class="profile-content">
<h1>Ustawienia głównego banera</h1>
<h2>Kliknij na obrazku i ustaw obszar, który będzie widoczny na banerze.</h2>
<img src="<? print $folder.$p_nazwa_zm; ?>" id="uploaded" style="width: 100%" alt="Obraz" />
<div id="preview" style="display: none; width: 654px; height: 231px; overflow: hidden;">
<img src="<? print $folder.$p_nazwa_zm; ?>" style="width: 654px; height: 231px" alt="Obraz" />
</div>
<form action="?option=baner|upload&lang=<? print $lang; ?>" method="post">
<input type="hidden" id="x1" value="" />
<input type="hidden" id="y1" value="" />
<input type="hidden" name="w" value="" />
<input type="hidden" name="h" value="" />
<input type="submit" name="next" value="Dalej" style="text-align: right; color: #333399; font-size: 12px; font-weight: bold; background: #f0f0f0; border: 0;" />
</form>
</div>
</div>
</div>
<?
if(!@move_uploaded_file($p_smiec, $folder.$p_nazwa_zm))
exit('Nie mozna zachowac pliku. Prawdopodobnie nie ma folderu lub nie można w nim zapisać');
} else {
$plik = $folder.$p_nazwa;
$nowy = $folder."baner_".$p_nazwa;
$img = imagecreatefromjpeg($plik);
$width = imagesx($img);
$height = imagesy($img);
$width_mini = $_POST['w'];
$height_mini = $_POST['h'];
$img_mini = imagecreatetruecolor($width_mini, $height_mini);
imagecopyresampled($img_mini, $img, 0, 0, 0, 0, $width_mini , $height_mini, $width , $height);
imagejpeg($img_mini, $nowy, 100);
imagedestroy($img);
imagedestroy($img_mini);
$podpis = $podpis_pl;
$path_file=$folder.$p_nazwa_zm;
$db = connect_db();
if ($both == 1) {
$lang = 'both';
$podpis = $podpis_pl.'|'.$podpis_en;
}
$query = "INSERT INTO baner VALUES (NULL, '$path_file', '$p_typ', '$lang', '$podpis')";
$result = $db -> query($query);
header("Location: ?option=baner?lang=".$lang);
}
?>
Niestety po kliknięciu przycisku "DALEJ", kod się nie wykonuje.
Dodam, że jestem w sumie nowicjuszem i wszystko robię na tutorialach, ucząc się przy tym. Bardzo proszę o naprowadzenie na rozwiązanie problemu. Jest do na pewno jakaś błahostka, jednak ja nie jestem w stanie tego rozgryźć, z powodu braku doświadczenia.
|