Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> как передать переменную c js в php не обновляя стр, передать переменную c js в php 
:(
    Опции темы
XpoHuk
  Дата 23.9.2012, 06:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 25
Регистрация: 21.3.2012

Репутация: нет
Всего: нет



Здравствуйте.
У меня проблема в следующем, есть форма которая обрабатывается 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">&nbsp;</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", но в силу того что я новичок я не понимаю о чём идёт речь, а реальных примеров я не нашёл.
PM MAIL   Вверх
XpoHuk
Дата 24.9.2012, 06:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 25
Регистрация: 21.3.2012

Репутация: нет
Всего: нет



В общем чтоб не мучиться с передачей значения из JS воспроизвёл эту переменную путём php
Код

$length = strlen($_POST["text"]);
$_POST['result1']=($length*3)+$_POST['par1']+$_POST['par2']+$_POST['par3']+$_POST['par4'];

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0901 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.