2014-09-21 4 views
-3

Внутри переменной интерпретатора у меня есть строка «nick».Неопределенная переменная со строкой

эхо A HREF = "#" OnClick = "PROF ('$ profuser.')">

@UP я удалила ЗНАК до того, так как эта команда уничтожив ВЕСЬ код в Stack Overflow

Он должен быть послан сюда:

<script> 
function prof(profuser){ 
var xmlhttp=new 
window.XMLHttpRequest(); xmlhttp.open("GET", "user.php?user=" + 
profuser, true); xmlhttp.send(); } 
</script> 

А потом этот файл под названием user.php:

$thisuser = $_GET['user']; echo $thisuser; 

Но этот код показывает мне, что строка «ник» не определена. Может ли кто-нибудь сказать мне, что не так, пожалуйста? И если в этом коде больше ошибок, расскажите мне, пожалуйста.

+0

Первый параметр ' open' должен быть строкой, например 'xmlhttp.open ('GET', ...)'. Также, когда вы пытаетесь передать переменную 'prof' в атрибут' onclick', вам нужно правильно указать/исключить переменную как строку JavaScript, например. 'onclick =" prof ('. json_encode ($ profuser).') "' –

+0

Что говорит вам, что «ник не определен»? Не совсем понятно, о чем вы говорите. – David

+0

onclick говорит, что он не определен, я предполагаю, но im new при отладке – asdasdasdasdd123

ответ

1

В качестве ошибки говорят, что ник рассматривается как неопределенная переменная. Это следует рассматривать как строки, так что вы должны добавить кавычки:

onclick="prof(\'' . addslashes($profuser) . '\')" 

Согласно @pswg, вы должны использовать addslashes() экранировать кавычки из переменной PHP в случае Были какие;)

+0

Но что не так в цитатах, которые я уже добавил? – asdasdasdasdd123

+0

Ваши одиночные кавычки, выраженные php на стороне сервера, нужны также на стороне клиента. – py3r3str

+0

Спасибо! вы очень помогаете! – asdasdasdasdd123

0

попробуйте это.

onclick="prof('<?php echo $profuser; ?>')" 

или

onclick="prof('<?= $profuser; ?>')" 

Я думаю, вы смешиваете PHP и JavaScript? Трудно сказать из ограниченного кода, который был опубликован.

Ваш вопрос, скорее всего, со ссылкой на один, если вы печатаете весь OnClick немного попробовать этот

echo 'onclick="prof(\''.$profuser.'\')"'; 

Это потому, что вы, вероятно, получить что-то подобное в вашем источнике.

onclick="prof(nick)"; 

И ник - это строка, не являющаяся переменной javascript, которая будет неопределенной.

+0

my onclick - это ссылка внутри эха в php уже. Извините, я не опубликовал его, но был слишком много кода – asdasdasdasdd123

+0

ну, если это кодовому коде, его нужно упростить.Во всяком случае, трудно помочь, не видя, как вы получите бит onclick – ArtisticPhoenix

+0

Я отредактирую свой первый пост за 1 секунду – asdasdasdasdd123

Смежные вопросы