Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: выгрузка данных в excel
Форумы портала PHP.SU » PHP » Напишите за меня, пожалуйста » выгрузка данных в excel

Страниц (1): [1]
 

1. maks - 01 Декабря, 2017 - 12:16:25 - перейти к сообщению
Добрый день всем))) ребят есть скрипт и прошу помочь доделать его.
PHP:
скопировать код в буфер обмена
  1. <?
  2. include('blocks/bd.php');// подключение к серверу MySql и выбор БД
  3. $userinfo='';
  4. $state=0;
  5. if( (isset($_COOKIE['login'])) & (isset($_COOKIE['pass'])) ) {// если в куках лежит логин и зашифрованый пароля
  6.   if (!isset($_GET['exit'])) {// если кнопка выход не была нажата
  7.     $login=$_COOKIE['login'];
  8.     $pass=$_COOKIE['pass'];
  9.  
  10.     // проверяем наличие пользователя в БД и достаём оттуда пароль
  11.     $sql="SELECT id, pass FROM users WHERE login='$login'";
  12.     $res=mysql_query($sql);
  13.     if(mysql_num_rows($res)>0){// если пользователь есть в БД
  14.       $userinfo = mysql_fetch_array($res);// в этой переменной лежит пароль из БД
  15.       if(strcmp($pass,md5($userinfo['pass'])) == 0) { //проверяем схожесть пароля из БД с паролем из куков
  16.  
  17.     // достаём все данные из БД
  18.     $sql="SELECT * FROM users WHERE login='$login'";
  19.     $res=mysql_query($sql);
  20.     $userinfo=mysql_fetch_array($res); // в этой переменной будет лежать вся информация о пользователе из БД
  21.     $time=time();
  22.     // устанавливаем куки для запоминания статуса пользователя
  23.     setcookie("login",$login,$time+1800);
  24.     setcookie("pass",$pass,$time+1800);
  25.     $state = 1;// статус, если 1, тогда пользователь авторизован
  26.       }
  27.     }
  28.   } else {
  29.     //обнуляем куки, если была нажата кнопка выход
  30.     setcookie("login");
  31.     setcookie("pass");
  32.   }
  33. }
  34. if($state != 1) {// если после проверки куков, оказалось, что пользователь не авторизован, то идем дальше
  35.   if( (isset($_POST['login'])) & (isset($_POST['pass'])) ){ // если пользователь ввёл логин и пароль
  36.   $login = $_POST['login'];    
  37.  
  38.   // проверяем наличие пользователя в БД и достаём оттуда пароль
  39.   $sql = "SELECT id, pass FROM users WHERE login='$login'";
  40.   $res = mysql_query($sql);
  41.     if(mysql_num_rows($res)>0) {// если пользователь есть в БД
  42.       $userinfo = mysql_fetch_array($res);// в этой переменной лежит пароль из БД и номер пользователя
  43.       $pass = $_POST['pass'];
  44.       if(strcmp($pass,$userinfo['pass'])==0){
  45.  
  46.     // достаём все данные из БД
  47.     $sql="SELECT * FROM users WHERE login='$login'";
  48.     $res=mysql_query($sql);
  49.     $userinfo=mysql_fetch_array($res);// в этой переменной будет лежать вся информация о пользователе из БД
  50.     $time=time();
  51.     // устанавливаем куки для запоминания статуса пользователя, пароль шифруем
  52.     setcookie("login", $login, $time+1800);
  53.     setcookie("pass", md5($pass), $time+1800);
  54.     $state = 1;// статус, если 1, тогда пользователь авторизован
  55.       }
  56.     }
  57.   }
  58. }
  59. if($state != 1) {
  60. ?>
  61. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  62. <html>
  63. <head>
  64. <meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
  65. <title>Главная</title>
  66. <link rel="stylesheet" type="text/css" href="css/style.css">
  67. </head>
  68.  
  69. <body>
  70. <table width="100%" border="0" align="center">
  71.   <tr>
  72.     <td><?PHP include("blocks/header.php"); ?></td>
  73.   </tr>
  74.   <tr>
  75.     <td>
  76. <form method="post" action="/index.php">
  77. Логин: <input type="text" size="30" name="login"/>
  78. Пароль: <input type="password" name="pass" size="30"/>
  79. <input type="submit" value="Войти"/>
  80. </form>
  81. <a href="/register.php">Регистрация</a>
  82. <?
  83. } else {
  84.   echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  85. <html>
  86. <head>
  87. <meta http-equiv="Content-Type" content="text/html; charset=windows-1251"><br>';
  88.   echo'<title>Создать заявку</title><br>';
  89.   echo'<link rel="stylesheet" type="text/css" href="/contractor/css/style.css"><br>';
  90.   echo'</head><br>
  91. <body><br>';
  92.   echo '<table width="100%" border="0" align="center">
  93.  <tr>
  94.    <td>';
  95.   require("blocks/header.php");
  96.  
  97.   require("blocks/menu.php");
  98. }
  99. ?>
  100.  
  101.     </td>
  102.   </tr>
  103.   <tr class="border">
  104.     <td>
  105.  <label>
  106.  <?PHP
  107.  
  108. $result = mysql_query ("SELECT * FROM forma",$db);
  109. $myrow = mysql_fetch_array($result);
  110. $str = array (1 => 'id', 2 => 'nomer', 3 => 'nlf', 4 => 'zag', 5 => 'problema');
  111. while($myrow = mysql_fetch_array($result)){
  112. echo $str[1] = $myrow['id'];
  113. echo $str[2] = $myrow['nomer'];
  114. echo $str[3] = $myrow['nlf'];
  115. echo $str[4] = $myrow['zag'];
  116. echo $str[5] = $myrow['problema'];
  117. }
  118. $fileName = 'file.csv';
  119. $fp = fopen($fileName, 'w');
  120. fwrite($fp,implode('<br>',$str));
  121. fclose($fp);
  122. echo '<a href="'. $fileName .'">скачать</a>';
  123. ?>
  124.  </label>
  125.  
  126.     </td>
  127.   </tr>
  128.    <tr>
  129.     <td><?PHP include("blocks/footer.php"); ?></td>
  130.   </tr>
  131. </table>
  132. </body>
  133. </html>
  134.  

хотелось бы что бы выгружалось в exel и по столбцам ну если кто не понял выгружаем из базы данных.
(Добавление)
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.  
  3. $result = mysql_query ("SELECT * FROM forma",$db);
  4. $myrow = mysql_fetch_array($result);
  5. $str = array (1 => 'id', 2 => 'nomer', 3 => 'nlf', 4 => 'zag', 5 => 'problema');
  6. while($myrow = mysql_fetch_array($result)){
  7. echo $str[1] = $myrow['id'];
  8. echo $str[2] = $myrow['nomer'];
  9. echo $str[3] = $myrow['nlf'];
  10. echo $str[4] = $myrow['zag'];
  11. echo $str[5] = $myrow['problema'];
  12. }
  13. $fileName = 'file.csv';
  14. $fp = fopen($fileName, 'w');
  15. fwrite($fp,implode('<br>',$str));
  16. fclose($fp);
  17. echo '<a href="'. $fileName .'">скачать</a>';
  18. ?>
вот если что не доработка !
2. Sail - 01 Декабря, 2017 - 21:17:52 - перейти к сообщению
maks, для справки: fputcsv()
3. maks - 02 Декабря, 2017 - 08:43:59 - перейти к сообщению
Хм блин так и придется делать самому кто просто разбирается быстрее сделает
4. Строитель - 02 Декабря, 2017 - 10:31:53 - перейти к сообщению
fwrite замените на fputcsv(), что там ещё делать? Радость Ссылку на fputcsv() вам выше предоставили - прочитайте о ее использовании, чтоб понимать, как её записывать.
5. maks - 02 Декабря, 2017 - 12:29:00 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1.  <?PHP
  2. require_once 'PHPExcel-1.8/Classes/PHPExcel.php'; // Подключаем библиотеку PHPExcel
  3.   $phpexcel = new PHPExcel(); // Создаём объект PHPExcel
  4.   /* Каждый раз делаем активной 1-ю страницу и получаем её, потом записываем в неё данные */
  5.   $page = $phpexcel->setActiveSheetIndex(0); // Делаем активной первую страницу и получаем её
  6.   $page = mysql_query("SELECT * FROM forma");
  7.   $page->setCellValue("A1", "HELLO"); // Добавляем в ячейку A1 слово "Hello"
  8.   $page->setCellValue("A2", "World!"); // Добавляем в ячейку A2 слово "World!"
  9.   $page->setCellValue("B1", "MyRusakov.ru"); // Добавляем в ячейку B1 слово "MyRusakov.ru"
  10.   $page->setTitle("Test"); // Ставим заголовок "Test" на странице
  11.   /* Начинаем готовиться к записи информации в xlsx-файл */
  12.   $objWriter = PHPExcel_IOFactory::createWriter($phpexcel, 'Excel2007');
  13.   /* Записываем в файл */
  14.   $objWriter->save("test.xlsx");
  15. ?>
как тут вывести то правильно переменную ?

 

Powered by ExBB FM 1.0 RC1