Chciałbym prosić o pomoc w napisaniu wyrażenia regularnego, które będzie dzieliło wpisany tekst na istniejący w bazie i dodanie końca wpisanego.
Tzn. Wpisuję " key " > wyszukuje " padlock " < słowo przypisane w bazie.
Gdy wpisuję " key/subpage " > wyszukuje " padlock/subpage ".
I tylko do pierwszego " / " , tzn. gdy wpiszę " key/subpage/subpage1 " to wynik bd : " padlock/subpage/subpage1 ".
Mój kod :
<?php
if(isset($_POST['wyszukaj'])){
require_once('polaczenia.php');
try{
$baza = new PDO('mysql:host='.$host.';dbname='.$db_name.';charset=utf8',
$db_user, $db_password, array(
PDO::ATTR_EMULATE_PREPARES => false,
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION
));
$wyszukaj=$_POST['wyszukaj'];
$min_wartosc = 1;
if(strlen($wyszukaj)>=$min_wartosc)
{
$wyszukaj =htmlspecialchars($wyszukaj);
$zapytanie=$baza->prepare("SELECT * FROM wyszukiwarka WHERE nazwa LIKE :wyszukaj");
$zapytanie->bindValue('wyszukaj', $_POST['wyszukaj'],PDO::PARAM_STR);
$zapytanie->execute(array($wyszukaj));
if($zapytanie->rowCount()>0)
{
while($wynik=$zapytanie->fetch())
{
echo $wynik['nazwa'] . "<br>";
header('location:http://'.$wynik['login']);
}
}
else
{
echo "brak <b> " . $wyszukaj . " </b> w bazie danych ...";
}
}
else
{
echo "";
}
$baza=null;
}catch (PDOException $err){
echo "ERROR:: ". $err->getMessage();
}
}
?>
Nie wiem ja tu zaimplementować przykład :
$data = "strona/podstrona/podstrona.html";
list($user, $pass)
= explode("/", $data, 2);
echo "$user <br>";
echo $pass;