В моей форме у меня есть следующие значения, которые основаны на стандартном запросе PHP / MySql.
echo "<tr>\n <td align='right'><b>Location</b></td> <td><input name='student_location' type='text' size='25' style='font-weight: 700' value=$location></td> </tr>";
Когда значение $location
является единственным словом, оно отображается правильно, когда более одного слова говорят, что «Северный кампус» отображает только «Север».
Я удвоил и утроил тройку, и правильное значение находится в базе данных, когда я выполняю эхо-значение для значения $ location, которое дает эхо корректное значение, но когда оно отображается в поле над ним, оно прерывает последнее слово. Это делается для всех моих переменных, которые содержат более одного слова, поэтому я пропустил что-то очевидное.
Вы забыли цитаты:
echo "<tr>\n <td align='right'><b>Location</b></td> <td><input name='student_location' type='text' size='25' style='font-weight: 700' value=\"$location\"></td> </tr>";
Без кавычек будет отмечено первое слово, другие будут интерпретироваться как неправильные атрибуты.
Вы должны поместить свои одинарные кавычки вокруг него, чтобы сделать его допустимым атрибутом. HTML создается как value=North Campus
который интерпретируется как value="North"
и некоторый атрибут Campus
который не имеет значения. Использовать value='$location'
.
вам нужно процитировать его, избегая "
echo "<tr>\n <td align='right'><b>Location</b></td> <td><input name='student_location' type='text' size='25' style='font-weight: 700' value=\"$location\"></td> </tr>";