Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: При переводе из String в Integer, значение переменной обращается в 0

Сообщения:  [1-7] 

 
 автор: tokmak   (05.10.2008 в 21:25)   письмо автору
 
   для: Drago   (05.10.2008 в 21:20)
 

вот так понятней, спасибо!
получается, что кроме как через $_GET, значения никак не передаются((

  Ответить  
 
 автор: Drago   (05.10.2008 в 21:20)   письмо автору
 
   для: tokmak   (05.10.2008 в 20:53)
 

Вы не понимаете. PHP отрабатывает раньше JS, так как исполняется на сервере. И в результате его работы, клиентский JS получает строки:

var count=10; 
document.write(''+ count +''); // таким образом я присваиваю значение одной переменной к другой 
document.write(''+ count +'<br>'+ count +'<br>'+ count +'');

которые и интерпритирует.

То есть, таким образом, вы лишь указали js, что ему нужно выводить на печать переменную count, которая равна 10-ти.
В то время как php, получает в качестве значения переменной $count строку "'+ count +'", которая при приведению к integer становиться нулём.

  Ответить  
 
 автор: tokmak   (05.10.2008 в 20:53)   письмо автору
 
   для: sim5   (05.10.2008 в 20:43)
 

хм, все выводится как мне нужно.

переменной $count(PHP) присваивается значение переменой count(JS)

вот этим кодом script.js

var count=10;
document.write('<?php $count="'+ count +'"?>'); // таким образом я присваиваю значение одной переменной к другой
document.write('<?php echo $count."<br>".$count."<br>".$count?>');


Этот код выведит
10
10
10

Т.е. значение переменной $count(PHP) присваивается значение переменой count(JS)
Но при переводе его в int, $count(PHP) срасывается на 0

Может есть какой то другой метод для обмена переменными между php и JS?
Никак не пому свою ошибку((

----
Начинаю примерно понимать...

  Ответить  
 
 автор: sim5   (05.10.2008 в 20:43)   письмо автору
 
   для: tokmak   (05.10.2008 в 20:29)
 

Если строка равна "100", то intval("100") выведет 100 и никак иначе.
Что касается обмена, то вы пытаетесь создать мутанта. Я вам уже говорил, что:
document.write('<?php echo $count; ?>') в части <?php echo $count; ?>, это не JS, это РНР, который на стороне клиента никак не будет работать, и просто выведет клиенту строку:
<?php echo $count; ?>
Это вобще несуразица:
php='<?php $count="'+ count +'"; ?>';
Вы так немного, почесав маковку, поразмышляйте, кто и что вам должен в результате этого выдать?

  Ответить  
 
 автор: tokmak   (05.10.2008 в 20:29)   письмо автору
 
   для: sim5   (05.10.2008 в 20:18)
 

sim5, спасибо, что часто помогаешь))

Мне нужно, чтобы переменные из javascript можно было перенести в PHP

Т.е.

var count=10;


И значение 10, перенести в PHP, чтобы
<?php echo $count?>
вывело значение 10.

Другими словами, обмен переменными между двумя языками.
Мне тока и пришло что написать
var count=10,php='<?php $count="'+ count +'";  ?>'; 
document.write('
<?php
echo $count?>


Если использвать inval($count) тоже самое выводит 0

  Ответить  
 
 автор: sim5   (05.10.2008 в 20:18)   письмо автору
 
   для: tokmak   (05.10.2008 в 20:08)
 

И что получиться в итоге:
100=100
Для чего? А вообще:
document.write('<?php 
echo intval($count); ?>'

Если вам конечно в JS сценрии именно число нужно.

PS. Пардон, вообще после этого:
<?php $count="'+ count +'";  ?>

ничего не получиться. Вы что пытаетесь скрестить ежика со слоном?

  Ответить  
 
 автор: tokmak   (05.10.2008 в 20:08)   письмо автору
 
 

Добрый вечер.

Нужно перевести число из String в Integer
Делаю так:

<?php
$count 
"100"//string

echo gettype($count); //выводит string
settype($count,integer);
echo 
$count// Выводит 0!
?>


В чем проблема? Переменную $count не могу сразу в интежере создать.
Т.к. работаю в файле js

var count=10,php='<?php $count="'+ count +'";  ?>';
document.write('<php
echo $count; ?>');


Спасибо))

  Ответить  

Сообщения:  [1-7] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования