разделить поле mysql с именем и фамилией на 2 php echo - PullRequest
0 голосов
/ 02 мая 2018

У меня есть поле в mysql, где я храню имя и фамилию в одном примере

John Smith

Я хочу отображать только имя john в некоторых случаях и только фамилию в других случаях, но, очевидно, если я выполню следующий запрос, я получу полный текст поля, такой как John Smith

$username=mysqli_real_escape_string($datacenter,$_POST['username']);
$check=mysqli_query($datacenter, "
SELECT * 
FROM `users` 
WHERE `username` = '$username' 
LIMIT 1");
if(mysqli_num_rows($check)>0){
while($display= mysqli_fetch_assoc($check)) {

чтобы отобразить его, я запускаю

<?php echo $display['fullname']?>


Echo : John Smith

Как отобразить только Джона или только Смита?

1 Ответ

0 голосов
/ 02 мая 2018

Лучше всего было бы изменить таблицу и добавить first_name и last_name, а затем обновить ее:

UPDATE `users` SET `first_name` = SUBSTRING_INDEX(`fullname`, ' ', 1),
                   `last_name`  = SUBSTRING_INDEX(`fullname`, ' ', -1)

Или выбрать их:

SELECT SUBSTRING_INDEX(`fullname`, ' ', 1)  as `first_name`,
       SUBSTRING_INDEX(`fullname`, ' ', -1) as `last_name`
       WHERE `username` = '$username' LIMIT 1

В PHP (или присваивать переменным):

echo explode(' ', $display['fullname'])[0];
echo explode(' ', $display['fullname'])[1];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...