Intereting Posts
Перестроить индекс массива Eloquent Laravel Предупреждение: mysqli_stmt :: bind_param (): Число переменных не соответствует количеству параметров в подготовленном операторе в C: \ User .. \ on 148 make: *** Ошибка 1 Чтение данных HttpRequest на OpenCart Как увеличить на 1 все ключи в массиве? Как динамически писать имя свойства объекта PHP? Как защитить веб-службу RESTful php с помощью безопасности SSL / TLS и / или уровня сообщений regexp сохранить / сопоставить любое слово, начинающееся с определенного символа Как написать запрос на обновление с помощью некоторой {$ variable} с примером Как я могу создать новую учетную запись пользователя Joomla из сценария? Что такое перенаправление: // в PATH_TRANSLATED? Как определить, работает ли на localhost Поиск свободных блоков времени в mysql и php? Поиск с полным именем вместо имени или фамилии Получить фрагмент (значение после hash '#') из URL-адреса в php

PHP получает значения с другой страницы

У меня есть эта страница admin_inquiry.php (page1), которая имеет динамическую таблицу, которая показывает строки записей. Я хочу получить значения из 2 столбцов, ContactNo и сообщения. Столбец contactno содержит ссылку, которая идет на admin_sms.php (стр. 2) и отображает контакт no в текстовом поле.

Страница 1:

<td><a href="admin_sms.php?ContactNo=<?php echo $row_ContactUs['ContactNo']; ?>">Send SMS</a></td> 

страница 2:

 <input name='number' type='text' id="number" value="<?php if(isset($_GET['ContactNo'])){echo $_GET['ContactNo'];}else{echo "";}?>"> 

Я также хочу получить содержимое сообщения столбца с первой страницы и показать его в текстовом поле на стр. 2. Но он должен показать сообщение, принадлежащее определенному идентификатору или чем-то еще. Я слышал о сеансах, но пока не понял. Не могли бы вы показать мне, как?

ОБНОВЛЕНИЕ Я пробовал это в admin_inquiry.php

 $_SESSION['message'] = $row_ContactUs['message']; 

admin_sms.php

 $_SESSION['message']; <textarea name="frmMsg" id="frmMsg" cols="45" rows="5"><?php echo $_SESSION['message'];?></textarea> 

Проблема в том, что она показывает одно и то же сообщение. Не соответствующее сообщение, которое принадлежит определенному идентификатору или чему-то. Помогите мне пожалуйста.

Если у вас все еще есть проблемы с решением этого вопроса, в вашей таблице содержится html form

ОБНОВЛЕНИЕ, включая разбивку на страницы

первое решение, создайте файл и назовите его contact.php

 <?php $db = new PDO('mysql:host=localhost; dbname=data','root',''); $contacts = $db->query('SELECT * FROM contactdetails'); //creating pagination $nav_counter = basename($_SERVER['SCRIPT_FILENAME']); //getting name of the current page $current_page = $nav_counter; $nav_counter = rtrim($nav_counter, ".php"); //getting the name of the current page and removing the extension //creating pagination pages $next_page = $nav_counter + 1; $prev_page = $nav_counter - 1; //getting row count, we are going to use it to limit our query and to create pagination $row_count = $contacts->rowCount(); //number of records to show per page $num_records = 5; //getting the last page $last_page = ($row_count / $num_records) - 1; if(!is_int($last_page)){ $last_page = (int)$last_page + 1; } //displaying records $start = 0; $limit = $num_records; //number of records to show if ($current_page !== 'admin_inquiry.php'){ $start = ($limit * $nav_counter); } //getting number of rows left in the table $rows_left = $db->query("SELECT * FROM contactdetails ORDER BY ID limit $start,$limit"); $num_rows = $rows_left->rowCount(); //if records left in the table is less than the number of records to show $num_records if ($num_rows < $num_records) { $limit = $num_rows; //limit is equal to the number of records left in the table } //getting number of records from the table $contacts = $db->query("SELECT * FROM contactdetails ORDER BY ID limit $start,$limit"); //displaying pagination and creating pages if they don't exists $pages = array(); for ($counter = 1; $counter <= $last_page; $counter++) { $pages[] = $counter; } //storing pages in array and creating a page if it doesn't exist foreach ($pages as $num) { $page = $num.'.php'; if(file_exists($page)== false && $num <= $last_page){ copy('admin_inquiry.php', $page); } } ?> 

создать файл pagination.php

 <p class="pagenav"><a href="<?php if($current_page == '1.php'){ echo 'admin_inquiry.php';}else{echo $prev_page.'.php';} ?>" <?php if($current_page == 'admin_inquiry.php'){echo 'class="hide"';} ?>>&lt;</a> <a href="<?php echo $next_page.'.php'; ?>" <?php if($next_page > $last_page){echo 'class="hide"';} ?>>&gt;</a></p> 

создать файл css admin.css

 table { width: 100%; margin: 0 auto; } table, td, th { border: 1px solid black; } th { height: 50px; } #div{ width: 40%; margin: 0 auto; } .pagenav a{ display: inline; width: 100px; padding: 10px; height: 100px; border-radius: 50px; font-size: 20px; color: #fff; line-height: 50px; text-align: center; text-decoration: none; background-color: #0186ba; } .pagenav a:hover{ background-color: #fff; border: 1px solid #000; color: #000; } .hide { display: none !important; } p{ text-align: center; } 

Файл admin_iquiry.php

  <?php require_once('contact.php'); ?> <!DOCTYPE html> <html> <head> <title></title> <link rel="stylesheet" type="text/css" href="admin.css"> </head> <body> <div id="div"> <table> <tr> <th>ID</th> <th>Contact No.</th> <th>Message</th> </tr> <?php foreach ($contacts as $value) : ?> <tr><td><?php echo $value['ID']; ?></td><td><?php echo $value['ContactNO']; ?></td><td><?php echo $value['Message'] ?></td><td><form action="admin_sms.php" method="post"><input type="hidden" name="ContactNo" value="<?php echo $value['ContactNO']; ?>"><input type="hidden" name="Message" value="<?php echo $value['Message']; ?>"><input type="Submit" value="Send SMS" name="send_sms" /></form></td></tr> <?php endforeach; ?> </table> <?php require_once('pagination.php'); ?> </div> </body> </html> 

admin_sms.php

 <?php if(isset($_POST['send_sms'])){ $contactNo = $_POST['ContactNo']; $message = $_POST['Message']; } ?> 

html-код

 <div style="margin:0 auto; width:50%"> <p>Message for: <?php echo $contactNo; ?></p> <textarea><?php echo "$message"; ?></textarea> 

введите описание изображения здесь

Второе решение с использованием $_GET

 <?php require_once('contact.php'); ?> <!DOCTYPE html> <html> <head> <title></title> <link rel="stylesheet" type="text/css" href="admin.css"> </head> <body> <div id="div"> <table> <tr> <th>ID</th> <th>Contact No.</th> <th>Message</th> </tr> foreach ($contacts as $value) : ?> <tr><td><?php echo $value['ID']; ?></td> <td><?php echo $value['ContactNO']; ?></td> <td><?php echo $value['Message'] ?></td> //use id of the contact no and in the next page use that id to query data related to that id <td><a href="admin_sms.php?id=<?php echo $value['ID']; ?>">Send Sms</a></td></tr> <?php endforeach; ?> </table> <?php require_once('pagination.php'); ?> </div> </body> </html> 

admin_sms.php

 <?php $db = new PDO('mysql:host=localhost; dbname=data','root',''); if(isset($_GET['id'])){ $id= $_GET['id']; $results = $db->query("SELECT * FROM contactdetails WHERE ID = $id"); foreach ($results as $value) { $contactNo = $value['ContactNO']; $message = $value['Message']; } } ?> 

в вашем html

 <div style="margin:0 auto; width:50%"> <p>Message for: <?php echo $contactNo; ?></p> <textarea><?php echo "$message"; ?></textarea> 

введите описание изображения здесь

Подход 1:

Используйте метод POST для отправки формы. Таким образом, вы можете запросить элемент Message, относящийся к контактному номеру, в зависимости от того, какое имя или идентификатор вы передали элементам <td> . (вы еще не дали).

Подход 2:

Задайте свойство href элемента контактного элемента динамически, используя, скажем, jQuery . Установите атрибут действия в URL-адрес, содержащий URL parameters ContactNo и Message as URL parameters . Таким образом, вы можете получить доступ к сообщению также из массива GET точно так же, как и с контактным номером (Примечание. Не уверен, что длинные тексты, такие как сообщение, могут передаваться как параметры URL-адреса, зависят от длины и могут быть проблемами безопасности ).