Извините, если на этот вопрос ответили, но если на него уже отвечали, я нигде не могу его найти. Итак, с самого начала. Допустим, у меня был стол member
, и я хочу сохранить в нем, каковы их главные интересы. Есть $row
, у которого есть все обычные вещи для их идентификации userID
и password
и т. Д., И у меня было еще 3 столбца, которые были помечены top3_1
, top3_2
& top3_3
, чтобы поставить каждый из них интересует в форме сообщения.
Если бы вместо этого я хотел сохранить эти данные в виде массива PHP (используя 1 столбец вместо 3), есть ли способ сохранить их как читаемые данные при открытии PHPmyadmin?
В настоящий момент все, что он говорит, это массив, и когда я перезваниваю его обратно в браузер (скажем, на странице, где они могут просмотреть и обновить свои интересы), он отображает «a» как top3_01, «r», как top3_02 и «r». 'как top3_03 (при каждом размещении то, что было бы' массивом ', как показано в таблице, если было 5 результатов. Кто-нибудь знает, что я имею в виду?
Например:
Если бы у нас была форма, в которой собраны три главных интереса, которые нужно поместить в таблицу с именем users,
<form action="back_to_same_page_for_processing.php" method="post" enctype="multipart/form-data">
<input name="top3_01" type="text" value="enter interest number 1 here" />
<input name="top3_02" type="text" value="enter interest number 2 here" />
<input name="top3_03" type="text" value="enter interest number 3 here" />
<input type="submit" name="update_button" value=" Save and Update! " />
</form> // If my quick code example for this form is not correct dont worry its not the point im getting at :)
И они поместили «bowling» в top3_01, «running» в top3_02 и «diving» в top3_03, и мы поймали это на той же странице с небольшим количеством PHP вверху ->
if (isset($_POST)['update_button']) {
$top3_01 = $_POST['top3_01']; // i.e, 'bowling' changing POST vars to local vars
$top3_02 = $_POST['top3_02']; // i.e, 'running'
$top3_03 = $_POST['top3_03']; // i.e, 'diving'
}
Со мной так далеко? Если бы у меня была таблица, в которой было 3 столбца (по 1 на каждый интерес), я мог бы поставить что-то вроде -
include('connect_msql.php');
mysql_query("Select * FROM users WHERE id='$id' AND blah blah blah");
mysql_query("UPDATE users SET top3_01='$top3_01', top3_02='$top3_02', top3_03='$top3_03' WHERE id='$id'");
И, надеюсь, если я правильно понял, он поместит их каждого в свою маленькую колонку. Достаточно просто, а? Но вот в чем дело, я хочу поместить все это в массив, который будет храниться в столбце 1 (скажем, с именем 'top3'), и, более того, они будут легко читаемыми в PHPmyadmin и доступны для редактирования оттуда, но при этом все еще можно будет вызывать обратно. отображается на странице по запросу.
Продолжая пример, предполагая, что я изменил таблицу для столбца 'top3' вместо отдельных столбцов, я мог бы поместить что-то вроде этого -
if (isset($_POST)['update_button']) {
$top3_01 = $_POST['top3_01']; // i.e, 'bowling' changing POST vars to local vars
$top3_02 = $_POST['top3_02']; // i.e, 'running'
$top3_03 = $_POST['top3_03']; // i.e, 'diving'
$top3_array = array($top3_01,$top3_02,$top3_03);
include('connect_msql.php');
mysql_query("UPDATE members SET top3='$top3_array' WHERE id='$id' AND blah blah blah");
Но в столбце он будет отображаться как «Массив», и при вызове с использованием запроса он будет отображать буквенную строку. вместо этого в каждом поле. Теперь я знаю, что вы можете использовать функции serialize()
& unserialize()
, но это делает запись в базе данных практически нечитаемой. Есть ли способ сделать его читаемым и редактируемым без создания системы управления контентом?
Если так, пожалуйста, дайте мне знать, и я буду вашим другом навсегда, лол, хорошо, возможно, нет, но я все равно буду очень признателен за помощь. Другое дело, если вы можете сделать это или что-то вроде этого, как мне добавить записи в этот массив, чтобы вернуться в базу данных?
Я надеюсь, что я достаточно объяснил здесь, но если не сказать так, и я пойду еще раз. Большое спасибо, новичок.