Программа поиска записей-резюме (ObrabRabotodateli.php)
Программа принимает значения полей из формы, заполненной работодателем, формирует условие отбора записей и текст запроса на выборку записей-резюме и выполняет запрос; формирует новую форму с данными из найденных записей-резюме (рисунок 3.5.1.3) и выводит ее в окно браузера работодателя. Эта новая форма инициирует вызов программы ObrabRabotodateli2.php.
<HTML>
<head> <title>Найденные записи-резюме</title> </head>
<form action="ObrabRabotodateli2.php" method="post" >
<body>
<?php
$dbhost ="localhost"; $dbname ="vipuskniki";
$userName ="vipuskniki"; $dbpass ="цукаср";
$link =mysql_connect($dbhost,$userName,$dbpass);
if (!$link) exit ("Невозможно подключение к MySQL: " . mysql_error());
mysql_select_db ($dbname,$link) or exit ("Невозможно открыть базу данных $dbname: " . mysql_error());
$where=""; //чтение полученных из формы значений полей в переменные
$kl1=trim(mb_strtolower($_POST['kl1'])); I f ($kl1=="любая специальность") $kl1="";
$kl2=trim(mb_strtolower($_POST['kl2'])); $kl3=trim(mb_strtolower($_POST['kl3']));
$kl4=trim(mb_strtolower($_POST['kl4'])); $kl5=trim(mb_strtolower($_POST['kl5']));
$kl6=trim(mb_strtolower($_POST['kl6'])); $kl7=trim(mb_strtolower($_POST['kl7']));
$kl8=trim(mb_strtolower($_POST['kl8'])); $kl9=trim(mb_strtolower($_POST['kl9']));
$kl10=trim(mb_strtolower($_POST['kl10'])); $kl11=trim(mb_strtolower($_POST['kl11']));
$kl12=trim(mb_strtolower($_POST['kl12'])); $kl13=trim(mb_strtolower($_POST['kl13']));
$kl14=trim(mb_strtolower($_POST['kl14'])); $kl15=trim(mb_strtolower($_POST['kl15']));
$kl16=trim(mb_strtolower($_POST['kl16']));
$andor1=$_POST['andor1']; $andor2=$_POST['andor2']; $andor3=$_POST['andor3'];
$andor4=$_POST['andor4']; $andor5=$_POST['andor5']; $andor6=$_POST['andor6'];
$andor7=$_POST['andor7']; $andor8=$_POST['andor8']; $andor9=$_POST['andor9'];
$andor10=$_POST['andor10']; $andor11=$_POST['andor11']; $andor12=$_POST['andor12'];
$andor13=$_POST['andor13']; $andor14=$_POST['andor14']; $andor15=$_POST['andor15'];
$so1=""; $sz1=""; $so2=""; $sz2=""; $so3=""; $sz3=""; $so4=""; $sz4=""; $so5=""; $sz5="";
$so6=""; $sz6=""; $so7=""; $sz7=""; $so8="";$sz8=""; $so9="";$sz9=""; $so10=""; $sz10=""; $so11=""; $sz11=""; $so12=""; $sz12=""; $so13=""; $sz13=""; $so14=""; $sz14="";$so15=""; $sz15=""; $so16=""; $sz16=""; $sp="";
if ($kl1) { $so1=$_POST['so1']; $sz1=$_POST['sz1']; }
else $sp=$sp . trim($_POST['so1']) . trim($_POST['sz1']);
if ($kl2) { $so2=$_POST['so2']; $sz2=$_POST['sz2']; }
else $sp=$sp . trim($_POST['so2']) . trim($_POST['sz2']);
if ($kl3) { $so3=$_POST['so3']; $sz3=$_POST['sz3']; }
else $sp=$sp . trim($_POST['so3']) . trim($_POST['sz3']);
if ($kl4) { $so4=$_POST['so4']; $sz4=$_POST['sz4']; }
else $sp=$sp . trim($_POST['so4']) . trim($_POST['sz4']);
if ($kl5) { $so5=$_POST['so5']; $sz5=$_POST['sz5']; }
else $sp=$sp . trim($_POST['so5']) . trim($_POST['sz5']);
if ($kl6) { $so6=$_POST['so6']; $sz6=$_POST['sz6']; }
else $sp=$sp . trim($_POST['so6']) . trim($_POST['sz6']);
if ($kl7) { $so7=$_POST['so7']; $sz7=$_POST['sz7']; }
else $sp=$sp . trim($_POST['so7']) . trim($_POST['sz7']);
if ($kl8) { $so8=$_POST['so8']; $sz8=$_POST['sz8']; }
else $sp=$sp . trim($_POST['so8']) . trim($_POST['sz8']);
if ($kl9) { $so9=$_POST['so9']; $sz9=$_POST['sz9']; }
else $sp=$sp . trim($_POST['so9']) . trim($_POST['sz9']);
if ($kl10) { $so10=$_POST['so10']; $sz10=$_POST['sz10'];}
else $sp=$sp . trim($_POST['so10']) . trim($_POST['sz10']);
if ($kl11) { $so11=$_POST['so11']; $sz11=$_POST['sz11'];}
else $sp=$sp . trim($_POST['so11']) . trim($_POST['sz11']);
if ($kl12) { $so12=$_POST['so12']; $sz12=$_POST['sz12'];}
else $sp=$sp . trim($_POST['so12']) . trim($_POST['sz12']);
if ($kl13) { $so13=$_POST['so13']; $sz13=$_POST['sz13'];}
else $sp=$sp . trim($_POST['so13']) . trim($_POST['sz13']);
if ($kl14) { $so14=$_POST['so14']; $sz14=$_POST['sz14'];}
else $sp=$sp . trim($_POST['so14']) . trim($_POST['sz14']);
if ($kl15) { $so15=$_POST['so15']; $sz15=$_POST['sz15'];}
else $sp=$sp . trim($_POST['so15']) . trim($_POST['sz15']);
if ($kl16) { $so16=$_POST['so16']; $sz16=$_POST['sz16'];}
else $sp=$sp . trim($_POST['so16']) . trim($_POST['sz16']);
$ckobki="$so1$so2$so3$so4$so5$so6$so7$so8$so9$so10$so11$so12$so13$so14$so15$so16$sz1$sz2$sz3$sz4$sz5$sz6$sz7$sz8$sz9$sz10$sz11$sz12$sz13$sz14$sz15$sz16";
$l=strlen($ckobki); $kso=0;$ksz=0;
for($i=0;$i<$l;$i++)
{ if ((substr($ckobki,$i,1)<>"(") and (substr($ckobki,$i,1)<>")"))
{ mysql_close($link); exit ("Ошибка: вместо круглых скобок указаны другие символы!"); }
if (substr($ckobki,$i,1)=="(") $kso++; if (substr($ckobki,$i,1)==")") $ksz++;
}
if ($kso<>$ksz)
{ mysql_close($link);
if ($sp) exit ("Ошибка в запросе: количество левых ($kso) и правых ($ksz) круглых скобок не совпадает (круглые скобки, указанныe в строках с отсутствующими ключевыми словами, не учитываются)!");
else exit ("Ошибка в запросе: количество левых ($kso) и правых ($ksz) круглых скобок не совпадает!");
}
//формирование текст строки запроса для поиска записей-резюме
$CONCAT=" CONCAT(LCASE(FIO),LCASE(Dr),LCASE(SemPologenie),
LCASE(Adress),LCASE(Tel),LCASE(E_mail),LCASE(Cel),LCASE(Obr1Period),
LCASE(Obr1UhebZaved),LCASE(Obr1Facultet),LCASE(Obr1Spec),LCASE(Obr1Kval),
LCASE(Obr2Period),LCASE(Obr2UhebZaved),LCASE(Obr2Facultet),LCASE(Obr2Spec),
LCASE(Obr2Kval),LCASE(DopObr1Prog),LCASE(DopObr1Organizacij),
DopObr1GodOkon,LCASE(DopObr2Prog),LCASE(DopObr2Organizacij),
DopObr2GodOkon,LCASE(OpitRaboti),LCASE(Objzannosti),LCASE(Naviki),
LCASE(DopInformacij),LCASE(KluhevieSlova),LCASE(Pol))";
$andor=" ";
if ($kl1)
{ $where=$where .$so1." $CONCAT like '%" . $kl1 . "%'" . $sz1;
if ($andor1=="i1") $andor=" and "; else $andor=" or ";
}
if ($kl2)
{ $where=$where . $andor . $so2. $CONCAT . " like '%" . $kl2 . "%'" . $sz2;
if ($andor2=="i2") $andor=" and "; else $andor=" or ";
}
if ($kl3)
{ $where=$where . $andor . $so3. $CONCAT . " like '%" . $kl3 . "%'" . $sz3;
if ($andor3=="i3") $andor=" and "; else $andor=" or ";
}
if ($kl4)
{ $where=$where . $andor . $so4. $CONCAT . " like '%" . $kl4 . "%'" . $sz4;
if ($andor4=="i4") $andor=" and "; else $andor=" or ";
}
if ($kl5)
{ $where=$where . $andor . $so5. $CONCAT . " like '%" . $kl5 . "%'" . $sz5;
if ($andor5=="i5") $andor=" and "; else $andor=" or ";
}
if ($kl6)
{ $where=$where . $andor . $so6. $CONCAT . " like '%" . $kl6 . "%'" . $sz6;
if ($andor6=="i6") $andor=" and "; else $andor=" or ";
}
if ($kl7)
{ $where=$where . $andor . $so7. $CONCAT . " like '%" . $kl7 . "%'" . $sz7;
if ($andor7=="i7") $andor=" and "; else $andor=" or ";
}
if ($kl8)
{ $where=$where . $andor . $so8. $CONCAT . " like '%" . $kl8 . "%'" . $sz8;
if ($andor8=="i8") $andor=" and "; else $andor=" or ";
}
if ($kl9)
{ $where=$where . $andor . $so9. $CONCAT . " like '%" . $kl9 . "%'" . $sz9;
if ($andor9=="i9") $andor=" and "; else $andor=" or ";
}
if ($kl10)
{ $where=$where . $andor . $so10. $CONCAT . " like '%" . $kl10 . "%'" . $sz10;
if ($andor10=="i10") $andor=" and "; else $andor=" or ";
}
if ($kl11)
{ $where=$where . $andor . $so11. $CONCAT . " like '%" . $kl11 . "%'" . $sz11;
if ($andor11=="i11") $andor=" and "; else $andor=" or ";
}
if ($kl12)
{ $where=$where . $andor . $so12. $CONCAT . " like '%" . $kl12 . "%'" . $sz12;
if ($andor12=="i12") $andor=" and "; else $andor=" or ";
}
if ($kl13)
{ $where=$where . $andor . $so13. $CONCAT . " like '%" . $kl13 . "%'" . $sz13;
if ($andor13=="i13") $andor=" and "; else $andor=" or ";
}
if ($kl14)
{ $where=$where . $andor . $so14. $CONCAT . " like '%" . $kl14 . "%'" . $sz14;
if ($andor14=="i14") $andor=" and "; else $andor=" or ";
}
if ($kl15)
{ $where=$where . $andor . $so15. $CONCAT . " like '%" . $kl15 . "%'" . $sz15;
if ($andor15=="i15") $andor=" and "; else $andor=" or ";
}
if ($kl16)
{ $where=$where . $andor . $so16. $CONCAT . " like '%" . $kl16 . "%'" . $sz16;
}
if ($where) $where=" where (Dostup=1 and (" . $where . "))";
else $where=" where Dostup=1";
//формируется фраза сортировки Order By текста запроса
$srt="";
if ($_POST['sort1']=="fio1") $srt=$srt . ",FIO";
if ($_POST['sort1']=="dr1") $srt=$srt . ",Dr";
if ($_POST['sort1']=="obr2Spec1") $srt=$srt . ",Obr2Spec";
if ($_POST['sort1']=="obr2Kval1") $srt=$srt . ",Obr2Kval";
if ($_POST['sort1']=="obr2Facultet1") $srt=$srt . ",Obr2Facultet";
if ($_POST['sort1']=="pol1") $srt=$srt . ",Pol";
if ($_POST['sort1']=="adress1") $srt=$srt . ",Adress";
if ($_POST['sort1']=="Ocenka1") $srt=$srt . ",Ocenka desc";
if ($_POST['sort1']=="Obr2Period1") $srt=$srt . ",Obr2Period";
if ($_POST['sort2']=="fio2") $srt=$srt . ",FIO";
if ($_POST['sort2']=="dr2") $srt=$srt . ",Dr";
if ($_POST['sort2']=="obr2Spec2") $srt=$srt . ",Obr2Spec";
if ($_POST['sort2']=="obr2Kval2") $srt=$srt . ",Obr2Kval";
if ($_POST['sort2']=="obr2Facultet2") $srt=$srt . ",Obr2Facultet";
if ($_POST['sort2']=="pol2") $srt=$srt . ",Pol";
if ($_POST['sort2']=="adress2") $srt=$srt . ",Adress";
if ($_POST['sort2']=="Ocenka2") $srt=$srt . ",Ocenka desc";
if ($_POST['sort2']=="Obr2Period2") $srt=$srt . ",Obr2Period";
if ($_POST['sort3']=="fio3") $srt=$srt . ",FIO";
if ($_POST['sort3']=="dr3") $srt=$srt . ",Dr";
if ($_POST['sort3']=="obr2Spec3") $srt=$srt . ",Obr2Spec";
if ($_POST['sort3']=="obr2Kval3") $srt=$srt . ",Obr2Kval";
if ($_POST['sort3']=="obr2Facultet3") $srt=$srt . ",Obr2Facultet";
if ($_POST['sort3']=="pol3") $srt=$srt . ",Pol";
if ($_POST['sort3']=="adress3") $srt=$srt . ",Adress";
if ($_POST['sort3']=="Ocenka3") $srt=$srt . ",Ocenka desc";
if ($_POST['sort3']=="Obr2Period3") $srt=$srt . ",Obr2Period";
if ($sort) $sort=" order by $srt";
if ($srt) { $srt=substr($srt,1); $srt=" Order by $srt"; }
$query = "Select * from Vipuskniki $where $srt"; //текст всего запроса
$result=mysql_query($query); //выполнение запроса
if (mysql_error()) exit ("Ошибка при выполнении поиска записей: " . mysql_error());
$n = mysql_num_rows ( $result );
if ( $n == 0 ) exit ("Нет записей, удовлетворяющих заданным условиям!");
$rf="2"; //размер шрифта относительный
$style="font-size: 12; font-weight: 700"; //жирный
$styleo="font-size: 10;"; //обычный
//формирование формы с найденными записями-резюме
?>
<input type="submit" value='Послать сообщения кандидатам' style="<?=$style; ?>">
<input type="reset" value='Очистить поля сообщений' style="<?=$style; ?>">
<font size="<?=$rf; ?>">
<?
echo "<br><b>Найдено записей-резюме $n </b>";
?>
<br><font size="<?=$rf; ?>" style="font-weight: 700" color="#0000ff">Сообщение всем кандидатам <input name="soobhvsem" maxlength=64000 size=82 style="<?=$styleo; ?>"> </font>
<br>-------------------------------------------------------------------------------------------------------------------------------------------------------
<br>
<?
for ( $i=0; $i<$n; $i++ ) $j=$i+$n; $j2=$j+$n; //цикл чтения найденных записей-рзюме
$row = mysql_fetch_array($result);
if ($row[FIO]) echo "<br><b>" . ($i+1).". $row[FIO] </b>" ;
if ($row[Dr]) //преобразование даты
{$dr2=$row[Dr] . "0000000000";
$dr2=substr($dr2,8,2) . "." . substr($dr2,5,2) . "." . substr($dr2,0,4);
$vozrast=date("Y") - substr($dr2,6,4);
if (($vozrast>14) and ($vozrast<100))
{ if (date("z")<date("z",strtotime($row[Dr]))) $vozrast=$vozrast-1;
echo ", дата рождения: $dr2, возраст $vozrast";
}
}
//Формирование строки формы из текущей записи-резюме
if ($row[Ocenka]) echo "; оценка $row[Ocenka]";
if ($row[SemPologenie]) echo "; $row[SemPologenie]";
if ($row[Tel]) echo "<br> Телефон: $row[Tel]";
if ($row[E_mail]) echo "; E_mail: $row[E_mail]";
if ($row[Adress]) echo "<br> Адрес: $row[Adress]";
if ($row[Cel]) echo "<br> Претендуемые должности: $row[Cel]";
if ($row[Objzannosti]) echo "<br> Предлагаемая деятельность: $row[Objzannosti]";
if ($row[DopInformacij]) echo "<br> Условия труда, зарплата: $row[DopInformacij]";
if ($row[OpitRaboti]) echo "<br>Опыт работы: когда, где, кем: $row[OpitRaboti]";
if ($row[Naviki]) echo "<br> Достижения, знания, навыки: $row[Naviki]";
if ($row[KluhevieSlova]) echo "<br> Ключевые слова для поиска: $row[KluhevieSlova]";
if (($row[Obr1Period]) or ($row[Obr1UhebZaved]) or ($row[Obr1Facultet]) or ($row[Obr1Spec]) or ($row[Obr1Kval]))
{ echo "<br>Образование 1.";
if ($row[Obr1Period]) echo " Период обучения: $row[Obr1Period].";
if ($row[Obr1UhebZaved]) echo " Учебное заведение: $row[Obr1UhebZaved].";
if ($row[Obr1Facultet]) echo " Институт/факультет, кафедра: $row[Obr1Facultet].";
if ($row[Obr1Spec]) echo " Специальность: $row[Obr1Spec].";
if ($row[Obr1Kval]) echo " Квалификация, степень: $row[Obr1Kval].";
}
if (($row[Obr2Period]) or ($row[Obr2UhebZaved]) or ($row[Obr2Facultet]) or ($row[Obr2Spec]) or ($row[Obr2Kval]))
{ echo "<br> Образование 2.";
if ($row[Obr2Period]) echo " Период обучения: $row[Obr2Period].";
if ($row[Obr2UhebZaved]) echo " Учебное заведение: $row[Obr2UhebZaved].";
if ($row[Obr2Facultet]) echo " Институт/факультет, кафедра: $row[Obr2Facultet].";
if ($row[Obr2Spec]) echo " Специальность: $row[Obr2Spec].";
if ($row[Obr2Kval]) echo " Квалификация, степень: $row[Obr2Kval].";
}
if (($row[DopObr1Prog]) or ($row[DopObr1Organizacij]) or ($row[DopObr1GodOkon]))
{ echo "<br>Дополнительное образование 1.";
if ($row[DopObr1Prog ]) echo " Программа обучения: $row[DopObr1Prog].";
if ($row[DopObr1Organizacij]) echo " Организация: $row[DopObr1Organizacij].";
if ($row[DopObr1GodOkon]) echo " Год окончания: $row[DopObr1GodOkon].";
}
if (($row[DopObr2Prog]) or ($row[DopObr2Organizacij]) or ($row[DopObr2GodOkon]))
{ echo "<br>Дополнительное образование 2.";
if ($row[DopObr2Prog]) echo " Программа обучения: $row[DopObr2Prog].";
if ($row[DopObr2Organizacij]) echo " Организация: $row[DopObr2Organizacij].";
if ($row[DopObr2GodOkon]) echo " Год окончания: $row[DopObr2GodOkon].";
}
?>
<br><font size="<?=$rf; ?>" style="font-weight: 700" color="#0000ff">Сообщение кандидату (всего <?=$row[Kolsoobhenierabot]?$row[Kolsoobhenierabot]:0; ?>) <input name="<?=$i ?>" maxlength=64000 size=80 style="<?=$styleo; ?>"> </font>
<input name="<?=$j ?>" maxlength=20 type="hidden" size=20 value="<?=$row[Un] ?>">
<input name="<?=$j2 ?>" maxlength=100 type="hidden" size=20 value="<?=$row[E_mail] ?>">
<?
if ($row[Foto]) //есть фото
{ $unz=$row[Un];
?>
<br>
<IMG SRC="http://vipuskniki.usue.ru/VivodFoto.php?unz=<?=$unz;?>" width=200 align="top" >
<?
}
echo "<br> -------------------------------------------------------------------------------------------------------------------------------------------------------";
}
?>
<input name="kolzap" maxlength=20 type="hidden" size=20 value="<?=$n ?>">
<?
mysql_close($link); //закрытие базы
?>
</body>
</HTML>
Дата добавления: 2015-04-15; просмотров: 820;