echo ($col); извежда стринга до първия пробел
12 отговора
194 прегледа
echo ($col); извежда стринга до първия пробел
echo ($col); извежда стринга до първата празна позиция
В темата е много кратко.
Значи имам си ОК връзка с MySQL и искам в една форма да изведа полетата от някой запис. В дебъгера си (PHP Exper Debuger на PHP Expert Editor) променливата $col на реда echo ($col) се вижда цялата (нещо като 'НУ "Хр.См"'), но във формата в текстовото поле се извежда само 'НУ'
foreach ($line as $col) {
?>
<form action=TestForm2c.php method=get>
<input type=text size=20 name="Text1" maxlength=10 value=
<?PHP
echo ($col);
?>
>
</form>
<?PHP
Пробвах да го потърся в документацита, а след това и да му сложа някакви разделители, но не успях да го налучкам :)
В темата е много кратко.
Значи имам си ОК връзка с MySQL и искам в една форма да изведа полетата от някой запис. В дебъгера си (PHP Exper Debuger на PHP Expert Editor) променливата $col на реда echo ($col) се вижда цялата (нещо като 'НУ "Хр.См"'), но във формата в текстовото поле се извежда само 'НУ'
foreach ($line as $col) {
?>
<form action=TestForm2c.php method=get>
<input type=text size=20 name="Text1" maxlength=10 value=
<?PHP
echo ($col);
?>
>
</form>
<?PHP
Пробвах да го потърся в документацита, а след това и да му сложа някакви разделители, но не успях да го налучкам :)
Re: echo ($col); извежда стринга до първия пробел
В отговор на:
'НУ "Хр.См"'
виж си кавичките
Е и
Видях ги, но не разбрах отговора ти. Написал съм, че в полето на MySQL таблицата пише
'НУ "Хр.См"',
сега пояснявам, че литералите са разделители в моя текст, а в полето пише само:
НУ "Хр.См"
Какъв им е проблема на кавичките ми?
'НУ "Хр.См"',
сега пояснявам, че литералите са разделители в моя текст, а в полето пише само:
НУ "Хр.См"
Какъв им е проблема на кавичките ми?
Re: Е и
проблема е, че се получава следния ХТМЛ:
<input ...blabla... value="НУ "Хр.См"">,
което ще рече, че валуе-то приема стойност "НУ "
едно от решенията е да направиш:
$value=str_replace('"', """, $value)
и няма да имаш грижи...
(кавичката съм я боядисал в червено за да се види)
Just a genius
<input ...blabla... value="НУ "Хр.См"">,
което ще рече, че валуе-то приема стойност "НУ "
едно от решенията е да направиш:
$value=str_replace('"', """, $value)
и няма да имаш грижи...
(кавичката съм я боядисал в червено за да се види)
Re: Е и
Коректното решение не трябва ли да включва прекарване през htmlentities? То ще замени кавичката с " и ще си в джаза.
Ей все забравям, че дира ще ми обърне & quot; (без интервал) на ".
--
"Agile is a mindset, not a set of practices, rules, or tools."
Tom Poppendieck
Ей все забравям, че дира ще ми обърне & quot; (без интервал) на ".
--
"Agile is a mindset, not a set of practices, rules, or tools."
Tom Poppendieck
Редактирано от Mycлoн на
Re: echo ($col); извежда стринга до първия пробел
Не е echo-тo , а HTML-то
То ти извежда до първа празна позиция. Ако не искаш да е така загради стринга на VALUE-то в апострофи и пусни стринга от РНР-то с addslashes
т.е.:
<input type=text size=20 name="Text1" maxlength=10 value='
<?PHP
echo addslashes($col);
?>
'>
root@localhost#cd /pub
root@localhost#more beer
То ти извежда до първа празна позиция. Ако не искаш да е така загради стринга на VALUE-то в апострофи и пусни стринга от РНР-то с addslashes
т.е.:
<input type=text size=20 name="Text1" maxlength=10 value='
<?PHP
echo addslashes($col);
?>
'>
root@localhost#cd /pub
root@localhost#more beer
Re: echo ($col); извежда стринга до първия пробел
Изглежда логично, но когато го пробвах, в дебъгера изглежда нормално (за мен):
<input type=text size=40 name="Text1" maxlength=40 value=
НУ \"Нещо си\">
но съдържанието на полето отново е до първия пробел.
(Пробелът май не е вкл, щото не се маркора с мишката)
<input type=text size=40 name="Text1" maxlength=40 value=
НУ \"Нещо си\">
но съдържанието на полето отново е до първия пробел.
(Пробелът май не е вкл, щото не се маркора с мишката)
Парсерна ме
Ако втория аргумент са 3 кавички ("), както си написал - казва
Parse error: parse error, unexpected '"' in ...
Ако са 4:
Parse error: parse error, unexpected T_CONSTANT_ENCAPSED_STRING in...
Ако са две - няма грешка, но няма и ефект.
Parse error: parse error, unexpected '"' in ...
Ако са 4:
Parse error: parse error, unexpected T_CONSTANT_ENCAPSED_STRING in...
Ако са две - няма грешка, но няма и ефект.
Re: echo ($col); извежда стринга до първия пробел
А загради ли цялото VALUE със апострофи както ти бях казал ?
value=
'
НУ \"Нещо си\"
'
>
root@localhost#cd /pub
root@localhost#more beer
value=
'
НУ \"Нещо си\"
'
>
root@localhost#cd /pub
root@localhost#more beer
Re: echo ($col); извежда стринга до първия пробел
а бе хора кви са тия ескейпи и т.н. има си функция за тази работа и тя няма нищо общо с ескейпите
[линк]
NikB, научи се да ползваш " в хтмл-то
тва не е никак добре написано!!
<form action=TestForm2c.php method=get>
<input type=text size=20 name="Text1" maxlength=10 value=
<?PHP
echo ($col);
?>
>
</form>
трябва да е
<form action="TestForm2c.php" method="get">
<input type="text" size="20" name="Text1" maxlength="10" value="<?=htmlspecialchars($col)?>">
</form>
освен това можеше да видиш с View Source какво всъщност си получил и да откриеш проблема
също така, това ми се видя част от цикъл (един foreach се мъдреше там)
ама такъв цикък ще отпечата N на брой форми с по един инпут в тях и после за нищо няма да може да ги ползваш смислено!!
[линк]
NikB, научи се да ползваш " в хтмл-то
тва не е никак добре написано!!
<form action=TestForm2c.php method=get>
<input type=text size=20 name="Text1" maxlength=10 value=
<?PHP
echo ($col);
?>
>
</form>
трябва да е
<form action="TestForm2c.php" method="get">
<input type="text" size="20" name="Text1" maxlength="10" value="<?=htmlspecialchars($col)?>">
</form>
освен това можеше да видиш с View Source какво всъщност си получил и да откриеш проблема
също така, това ми се видя част от цикъл (един foreach се мъдреше там)
ама такъв цикък ще отпечата N на брой форми с по един инпут в тях и после за нищо няма да може да ги ползваш смислено!!
10x
Благодаря, върви.
Ще видя къде са разликите.
А за цикъла - все някъде ще сложа уникални идентификатори, за да имам достъп до стойностите на всяка променлива :) - това сега не ми е проблем
Ще видя къде са разликите.
А за цикъла - все някъде ще сложа уникални идентификатори, за да имам достъп до стойностите на всяка променлива :) - това сега не ми е проблем