Здравствуйте. У меня проблема в следующем, есть форма которая обрабатывается JS на количество символов в textarea и с помощью PHP записывается в Базу. Так вот то что выводится в форме по средствам JS не получается записать в базу (я понимаю что js на стороне клиента а PHP на стороне сервера) но как передать переменную c js в php не обновляя страницы? Код | $conn = mysql_connect("localhost","root","") or die ("Невозможно соединиться с базой".mysql_error()); mysql_select_db("form"); echo 'соединение установленно';
$send = $_POST['send']; if (@$send){ $sql = "INSERT INTO advert SET FIO='".$_POST['FIO']."', address='".$_POST['address']."', phone='".$_POST['phone']."', rubric='".$_POST['rubric']."', subheading='".$_POST['subheading']."', par1='".$_POST['par1']."', par2='".$_POST['par2']."', par3='".$_POST['par3']."', par4='".$_POST['par4']."', result1='".$_POST['result1']."', result2='".$_POST['result2']."', text='".$_POST['text']."'"; } else echo 'Нажмите кнопку записи'; $result = mysql_query($sql, $conn); mysql_close($conn);
|
Код | <form name="form" method="post"> <span>Ф.И.О: </span><input name="FIO" size="20" /><br /><br /> <span>Адрес: </span><input name="address" size="20" /><br /><br /> <span>Тел: </span><input name="phone" size="20" /><br /><br /> <span>Стоимость: </span><input size="20" /><br /><br /> <span>Менеджер: </span><input size="20" /><br /><br />
<span>Рубрика: </span><input name="rubric" size="20" /><br /><br /> <span>Подрубрика: </span><input name="subheading" size="20" /><br /><br />
<input type="checkbox" onchange="count()" value="20" name="par1" id="par1" onKeyUp="count()" /> <label for="par1">Выделение жирным шрифтом (20р.)</label><br /> <input type="checkbox" onchange="count()" value="70" name="par2" id="par2" onKeyUp="count()" /> <label for="par2">Выделить текст рамкой (70р.)</label><br /> <input type="checkbox" onchange="count()" value="200" name="par3" id="par3" onKeyUp="count()" /> <label for="par3">Выделить текст рамкой (200р.)</label><br /> <input type="checkbox" onchange="count()" value="200" name="par4" id="par4" onKeyUp="count()" /> <label for="par4">Выделить чёрным фоном (200р.)</label><br />
<p class="noindent"><textarea onkeypress="count()" onkeyup="count()" name="text" rows="10" cols="60"></textarea>
<div>Символов: <input id="result2" value="" /></div> <div>Стоимость: <input id="result1" value="" /> руб.</div>
<input value="Очистить" type="reset"> </p> <input value="Подать объявление" name="send" type="submit"> </form>
|
Код | function isSpace(s){ }
function count(){
var c=0 var i var prevspace=true var str=document.forms.form.text.value
for(i=str.length-1;i>=0;i--){ if(isSpace(str.charAt(i)) && prevspace){ } else{ c++ } prevspace=isSpace(str.charAt(i)) }
var par1 = document.getElementById("par1"); var par2 = document.getElementById("par2"); var par3 = document.getElementById("par3"); var par4 = document.getElementById("par4"); var price = 0; price += (par1.checked == true) ? parseInt(par1.value) : 0; price += (par2.checked == true) ? parseInt(par2.value) : 0; price += (par3.checked == true) ? parseInt(par3.value) : 0; price += (par4.checked == true) ? parseInt(par4.value) : 0; document.forms.form.result2.value=c; document.forms.form.result1.value=c * 3 + price; }
|
PS: я искал решение в интернете там пишется: "это можно сделать с помощью AJAX", но в силу того что я новичок я не понимаю о чём идёт речь, а реальных примеров я не нашёл.
|