Wiatm serdecznie :)
Zapewne każdy z Was miał w życiu taką sytuację, kiedy natrętny profesor wymagał rzeczy, na których kompletnie się nie znacie i trzeba było to jakoś zaliczyć. Zasięga się wtedy rady eksperta i z tąd mój post.
Posiadam programik w PHP - wyszukiwarka pracowników. Po wpisaniu w nazwisku,imieniu... litery lub ciągu znaków wyszukuje przypadek zawierający ten ciąg. tym różni się od standardowej wyszukiwarki. Baza nazwisk znajduje sie w pliku txt. Program mozecie obejrzeć pod adresem:
http://test.microproject.pl/pracownicy/
Problem jest taki, że należy stworzyć schemat blokowy do tego, moze być prosty, niezbyt skomplikowany.
Bardzo proszę Was o pomoc mam nadzieję, że znajdzie się jakiś "miłosierny samarytanin" [browar]
Poniżej zamieszczam kod:
<?php
$file = file('data.txt');
$zawody = array();
$wyniki = array();
for($i=1; $i<sizeof($file); $i++) {
$tmp = 0;
$line = explode(';', $file[$i]);
$zawody[] = $line[3];
$imie = $line[0];
$nazwisko = $line[1];
$wiek = $line[2];
$zawod = $line[3];
$jezyk = $line[4];
$plec = trim($line[5]);
$prawo_jazdy = trim($line[6]);
if(!preg_match('@(.*?)'.$_POST['imie'].'(.*?)@is', $imie) && !empty($_POST['imie'])) {
$tmp = 1;
}
if(!preg_match('@(.*?)'.$_POST['nazwisko'].'(.*?)@is', $nazwisko) && !empty($_POST['nazwisko'])) {
$tmp = 1;
}
if( ($wiek < $_POST['wiek_od'] && !empty($_POST['wiek_od'])) || (!empty($_POST['wiek_do']) && $wiek> $_POST['wiek_do'])) {
$tmp = 1;
}
if($_POST['zawod']!=$zawod && !empty($_POST['zawod'])) {
$tmp = 1;
}
if(($_POST['jezyk']!=$jezyk && !empty($_POST['jezyk']))) {
$tmp = 1;
}
if(($_POST['plec']!=$plec && !empty($_POST['plec']))) {
$tmp = 1;
}
if($_POST['prawo_jazdy']!=$prawo_jazdy && !empty($_POST['prawo_jazdy'])) {
$tmp = 1;
}
if($tmp == 0 && $_POST['act']=='szukaj') {
$wyniki[] = $line;
}
}
$zawody = array_unique($zawody);
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title></title>
<style>
body { font-family: Tahoma; }
td { text-align: center;}
.row td { background-color: #ccc; }
</style>
</head>
<body>
<center>
<img src="logo.jpg" /><br/>
<br/> <br/>
<table>
<tr>
<th>
Imię
</th>
<th>
Nazwisko
</th>
<th>
Wiek
</th>
<th>
Zawód
</th>
<th>
Język
</th>
<th>
Płeć
</th>
<th>
Prawo jazdy kat. B
</th>
<th>
Akcja
</th>
</tr>
<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>" >
<input type="hidden" name="act" value="szukaj" />
<tr>
<td>
<input type="text" name="imie" value="<?php echo $_POST['imie']; ?>"/>
</td>
<td>
<input type="text" name="nazwisko" value="<?php echo $_POST['nazwisko']; ?>"/>
</td>
<td>
Od: <input type="text" size="2" name="wiek_od" value="<?php echo $_POST['wiek_od']; ?>"/>
do: <input type="text" size="2" name="wiek_do" value="<?php echo $_POST['wiek_do']; ?>"/>
</td>
<td>
<select name="zawod">
<option value=""> wszystkie </option>
<?php foreach($zawody as $zawod): ?>
<option value="<?php echo $zawod; ?>" <?php if($_POST['zawod'] == $zawod): ?>selected="selected"<?php endif; ?>><?php echo $zawod; ?></option>
<?php endforeach; ?>
</select>
</td>
<td>
<select name="jezyk">
<option value=""> wszystkie </option>
<option value="en" <?php if($_POST['jezyk']=='en'): ?>selected="selected"<?php endif; ?>>angielski</option>
<option value="de" <?php if($_POST['jezyk']=='de'): ?>selected="selected"<?php endif; ?>>niemiecki</option>
<option value="ru" <?php if($_POST['jezyk']=='ru'): ?>selected="selected"<?php endif; ?>>rosyjski</option>
</select>
</td>
<td>
<select name="plec">
<option value=""> obojętnie </option>
<option value="k" <?php if($_POST['plec']=='k'): ?>selected="selected"<?php endif; ?>>kobieta</option>
<option value="m" <?php if($_POST['plec']=='m'): ?>selected="selected"<?php endif; ?>>mężczyzna</option>
</select>
</td>
<td>
<select name="prawo_jazdy">
<option value="">nie istotne</option>
<option value="tak" <?php if($_POST['prawo_jazdy'] == 'tak'): ?>selected="selected"<?php endif; ?>>TAK</option>
<option value="nie" <?php if($_POST['prawo_jazdy'] == 'nie'): ?>selected="selected"<?php endif; ?>>NIE</option>
</select>
</td>
<td>
<input type="submit" name="submit" value="szukaj"/>
</td>
</tr>
</form>
<tr>
<td colspan="7">
<hr/>
</td>
</tr>
<?php if(sizeof($wyniki)>0): ?>
<?php foreach($wyniki as $i=>$wynik): ?>
<tr <?php if($i%2==0): ?>class="row"<?php endif; ?>>
<td>
<?php echo $wynik[0]; ?>
</td>
<td>
<?php echo $wynik[1]; ?>
</td>
<td>
<?php echo $wynik[2]; ?>
</td>
<td>
<?php echo $wynik[3]; ?>
</td>
<td>
<?php echo $wynik[4]; ?>
</td>
<td>
<?php if($wynik[5]=='k'): ?> kobieta<?php elseif($wynik[5]=='m'): ?>mężczyzna<?php endif; ?>
</td>
<td>
<?php echo $wynik[6]; ?>
</td>
</tr>
<?php endforeach; ?>
<?php elseif($_POST['act']=='szukaj'): ?>
<tr>
<td colspan="7">
Niestety nic nie znaleziono.
</td>
</tr>
<?php endif; ?>
</table>
</center>
</body>
</html>
i plik TXT
imie;nazwisko;wiek;zawód;język;płeć;prawo jazdy
Szymon;Perski;27;kucharz;en;m;tak
Wojciech;Kaczmarek;40;kucharz;ru;m;nie
Dawid;Kowalski;26;piekarz;ru;m;tak
Dawid;Wiącek;24;grafik komp;en;m;tak
Mateusz;Kurkowski;32;grafik komp;de;m;tak
Lidia;Marks;27;grafik komp;en;k;tak
Aleksandra;Pryk;23;grafik komp;en;k;nie
Tomasz;Szczęsny;41;programista;;m;nie
Julian;Tabor;31;programista;;m;tak
Anna;Larks;45;programista;;k;nie
Dariusz;Walczak;24;programista;en;m;tak
Joanna;Perepeczko;19;webdesigner;en;k;tak
Edmund;Kulas;25;webdesigner;en;m;tak
Michał;Wrótniak;23;hydraulik;en;m;tak
Dariusz;Sadowski;49;hydraulik;ru;m;tak
Anna;Mucha;30;aktor;en;k;tak
Krzysztof;Ibisz;41;aktor;en;m;tak
Marcin;Urban;45;kelner;en;m;nie
</url>