Я в основном пытаюсь вывести данные из базы данных. Он прекрасно работает, когда его выводит, но когда у меня есть текстовое поле и я хочу поместить вывод в атрибут value в
Это мой код:
while($row = mysql_fetch_assoc($retval))
{echo "
Kontakt / Infos:
<form action='edit.php?update' method='POST'>
<input type='hidden' name='idtoedit' value='".$editid."' />
<input name='zuname' type='text' size='30' value={$row['name']}>
<input type='submit' value='Speichern'>
</form>
";
}
Например, если данные в MySQL «Привет, меня зовут Максим», я вижу только «Привет» в текстовом поле. В чем проблема?
заранее спасибо
Проблема в том, что ваш value
не имеет quotes
вокруг это variable
поэтому он разбивается на пустое пространство, а остальное рассматривается как свойства.
value=\"{$row['name']}\"
использование '
до и после {$row['name']}
как
while($row = mysql_fetch_assoc($retval))
{echo "
Kontakt / Infos:
<form action='edit.php?update' method='POST'>
<input type='hidden' name='idtoedit' value='".$editid."' />
<input name='zuname' type='text' size='30' value='{$row['name']}'>
<input type='submit' value='Speichern'>
</form>
";
}
Попробуй это
while($row = mysql_fetch_assoc($retval))
{echo "
Kontakt / Infos:
<form action='edit.php?update' method='POST'>
<input type='hidden' name='idtoedit' value='".$editid."' />
<input name='zuname' type='text' size='30' value=".$row['name'].">
<input type='submit' value='Speichern'>
</form>
";
}
ПЫТАТЬСЯ
while($row = mysql_fetch_assoc($retval))
{
printf("
Kontakt / Infos:
<form action='edit.php?update' method='POST'>
<input type='hidden' name='idtoedit' value='".$editid."' />
<input name='zuname' type='text' size='30' value='%s'>
<input type='submit' value='Speichern'>
</form>
",$row['name']);
}
На мой взгляд, лучше сделать так:
while($row = mysql_fetch_assoc($retval))
{ ?>
Kontakt / Infos:
<form action='edit.php?update' method='POST'>
<input type='hidden' name='idtoedit' value="<?=$editid?>" />
<input name='zuname' type='text' size='30' value="<?=$row['name']?>">
<input type='submit' value='Speichern'>
</form>
<?
}
У вас здесь много HTML-кода. Помещение этого в эхо делает код менее понятным.