[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Помогите разобраться в скрипте...
SnoopCat
Доброго времени суток.)

Сильно не пинайте не спец в php, только учусь.

Есть скрипт, в нём есть переменная $ops, ей должно быть присвоено значение из таблицы excel, но вместо этого присваивается название файла таблицы.

Проблема, как мне кажется, заключается в этом моменте (ближе к середине скрипта):


if(isset($_FILES['new_xlsx']) && !empty($_FILES['new_xlsx']) && $_FILES['new_xlsx']['error'] == 0) {
//echo $_FILES['new_xlsx']['type'].'<br>';

$arr_allowTypes = array(
0=>'application/vndopenxmlformats-officedocumentspreadsheetmlsheet',
1=>'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',
2=>'application/excel'
);
if(in_array($_FILES['new_xlsx']['type'], $arr_allowTypes)) {

$basePath = rtrim(str_replace('\\', '/', realpath(dirname(__FILE__))), '/') . '/../';
move_uploaded_file($_FILES['new_xlsx']['tmp_name'], $basePath."excel/".$_FILES['new_xlsx']['name']);
$_SESSION['ops_number'] = $_FILES['new_xlsx']['name'];
$_SESSION['fio_col'] = $_POST['col_fio'];
$_SESSION['col_pas'] = $_POST['col_pas'];
$_SESSION['col_tabel'] = $_POST['col_tabel'];



//header('Location: ' . basename(__FILE__));
} else {
$mess = "Неверный формат файла";
}
}

else {
if(isset($_FILES['new_xlsx'])) {
$mess = "Файл не был выбран";
}
}


if(isSet($_SESSION['fio_col']))
{
$fldValueFio = ((int) $_SESSION['fio_col']);
}

if(isSet($_SESSION['col_pas']))
{
$fldValuePas = ((int) $_SESSION['col_pas']);
}

if(isSet($_SESSION['col_tabel']))
{
$fldValueTabel = ((int) $_SESSION['col_tabel']);
}



и в этом (ближе к концу скрипта):


if( file_exists($excelFile) ) {
$ops = $_SESSION['ops_number'];
$ops = substr($ops, 0, strrpos($ops, '.xlsx') );
echo '<div style="color:red;">'.$ops.'</div>';
$ops = trim($ops);

Помогите разобраться почему переменная не получает значение из таблицы.



Собственно кусок скрипта:


<?php
error_reporting(E_ALL);
//session_start();
date_default_timezone_set('Europe/Moscow');


function substr_from_start_in_array($needle, $haystack) {
echo '<script type="text/javascript">console.log(\'Поиск табельного '.$needle.' по части строки\')</script>';
$pos = false;
foreach ($haystack as $key => $haystackElement) {
$foundedPosition = stripos($haystackElement, $needle);
$strlenNeedle = 0 + mb_strlen($needle, 'utf8');
$strlenHaystackElement = 0 + mb_strlen($haystackElement, 'utf8');

if($strlenHaystackElement > $strlenNeedle && $foundedPosition !== false && $foundedPosition === 0) {
$sym = substr($haystackElement, $strlenNeedle, 1);
$pregM = preg_match('/\D/i', $sym);
if($pregM == 1) {
$pos = $key;
break;
}
}
}


return $pos;
}


function fio_exists_in_array($fio, $arrayOfFio, $serialized = true) {
$pos = false;
$posArray = array();

$fioArray = explode(' ', $fio);

foreach ($arrayOfFio as $key => $haystackFio) {
if($serialized) {
$haystackFioArray = unserialize($haystackFio);
array_pop($haystackFioArray);
} else {
$haystackFioArray = $haystackFio;
}
if( count(array_diff($fioArray, $haystackFioArray)) == 0 ) {
$posArray[] = $key;
}
}

if(count($posArray) > 0) {
return $posArray;
}
return $pos;
}

function getFilterSqlColumnNotEmpty($elem) {
return !empty($elem['sql']);
}

function getSqlColumn($elem) {
return $elem['sql'];
}

function getUsernameColumn($elem) {
return $elem['Username'];
}

function filterOnlyWorkers($elem) {
return ( $elem['Role'] == 'worker' ? true : false );
}

function getDisplayColumn($elem) {
return $elem['Display'];
}

function getPassColumn($elem) {
return $elem['Password'];
}

$worker_positions = array(
//'n' => 'Начальник ОПС',
'z' => 'Заместитель начальника ОПС',
'zb' => 'Заместитель начальника ОПС (ОПС Будущего)',
'o1' => 'Оператор связи 1 класса',
'o2' => 'Оператор связи 2 класса',
'o3' => 'Оператор связи 3 класса',
'ob1' => 'Оператор по обеспечению деятельности (ОПС Будущего)',
'ob2' => 'Оператор по работе с клиентами (ОПС Будущего)'
//'p1' => 'Почтальон 1 класса',
//'p2' => 'Почтальон 2 класса',
//'p3' => 'Почтальон 3 класса'

);

$fldValueFio = 1;
$fldValuePas = 2;
$fldValueTabel = 3;

require_once('database_for_import.php');

$mess = false;

if(isset($_FILES['new_xlsx']) && !empty($_FILES['new_xlsx']) && $_FILES['new_xlsx']['error'] == 0) {
//echo $_FILES['new_xlsx']['type'].'<br>';

$arr_allowTypes = array(
0=>'application/vndopenxmlformats-officedocumentspreadsheetmlsheet',
1=>'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',
2=>'application/excel'
);
if(in_array($_FILES['new_xlsx']['type'], $arr_allowTypes)) {

$basePath = rtrim(str_replace('\\', '/', realpath(dirname(__FILE__))), '/') . '/../';
move_uploaded_file($_FILES['new_xlsx']['tmp_name'], $basePath."excel/".$_FILES['new_xlsx']['name']);
$_SESSION['ops_number'] = $_FILES['new_xlsx']['name'];
$_SESSION['fio_col'] = $_POST['col_fio'];
$_SESSION['col_pas'] = $_POST['col_pas'];
$_SESSION['col_tabel'] = $_POST['col_tabel'];



//header('Location: ' . basename(__FILE__));
} else {
$mess = "Неверный формат файла";
}
}

else {
if(isset($_FILES['new_xlsx'])) {
$mess = "Файл не был выбран";
}
}


if(isSet($_SESSION['fio_col']))
{
$fldValueFio = ((int) $_SESSION['fio_col']);
}

if(isSet($_SESSION['col_pas']))
{
$fldValuePas = ((int) $_SESSION['col_pas']);
}

if(isSet($_SESSION['col_tabel']))
{
$fldValueTabel = ((int) $_SESSION['col_tabel']);
}


if(isSet($_SESSION['ops_number']))
{
//из bgimg//
$excelFile = rtrim(str_replace('\\', '/', realpath(dirname(__FILE__))), '/') . '/../excel/'.$_SESSION['ops_number'];

if( file_exists($excelFile) ) {
$ops = $_SESSION['ops_number'];
$ops = substr($ops, 0, strrpos($ops, '.xlsx') );
echo '<div style="color:red;">'.$ops.'</div>';
$ops = trim($ops);


$rowNumber = 2;
$colFio = ((int) $_SESSION['fio_col']) - 1;
$colPas = ((int) $_SESSION['col_pas']) - 1;
$colTabel = ((int) $_SESSION['col_tabel']) - 1;

$opsArray = array();
$opsIndexArray = array();
$opsSql = "SELECT * FROM `Posts_new` WHERE `PostIndex` NOT LIKE '-' AND `Address` NOT LIKE '' ORDER BY `Posts_new`.`PostIndex` ASC";
$opsRes = $mysqli->query($opsSql);

if($opsRes->num_rows > 0) {
while($row = $opsRes->fetch_assoc()) {
$opsArray[] = $row;
$opsIndexArray[] = $row['PostIndex'];
}
}



$currentOpsKey = array_search($ops, $opsIndexArray);
if($currentOpsKey === false) {
die('Загружаемое ОПС ' . $ops . ' нет в таблице PostIndex');
}
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.