Skrypt php.

0

Witam serdecznie, jestem dość początkującym 'programistą' ( za mocne słowa ).
Napisałem prosty skrypt który hostowałem i testowałem na proserwer, nie było problemu wszystko działa idealnie. Jednak, strona stać musi na debianie w pracy....Strona generalnie działa, jednak wyszukiwarka którą bardzo kulawo napisałem..już nie ;( Strona nie reaguje, nie robi nic.

/edit
Dodam iż na proserwerze jest PHP 5.2 a na moim debianku 5.3 - nie wiem czy to robi różnice.

Tu jest kod indexa w którym mam wyszukiwarkę.

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="pl" xml:lang="pl">
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<meta http-equiv="content-language" content="pl" />
<meta http-equiv="content-style-type" content="text/css" />
<meta name="resource-type" content="document" />
<meta name="copyright" content="xxx" />
<meta name="keywords" content="" />
<meta name="description" content="xxx" />
<title>xxx</title>

<div style="font-size: 12px; float: left; margin-left: 2px; font-weight: bold;">
ver 2.0a 
</div>

<div style="font-size: 11px; float: right; margin-right: 2px; font-weight: bold;">
<a href="changelog.php" class="menulink"><span style="color:white">:)</span></a>
</div>


<center style="clear: both;"><img src="img/telefon.png" style="width: 250px; height: 250px;" alt="" /></center>
<center>
<br>
<br>
<div style="font-size: 22px; font-weight: bold;">
<a href="lista.php" class="menulink"><span style="color:blue"> >> Lista telefonów << </span></a>
</div>
<br>
<br>
<br>
							
 <form name="search" method="post" action="<?=$PHP_SELF?>">
<b>Szukaj:</b> <input type="text" name="find" /> <b>-</b> 
<Select NAME="field">
<Option VALUE="fname">Nazwa</option>
<Option VALUE="lname">Numer telefonu</option>
<Option VALUE="info">Numer wewnętrzny</option>
</Select>

<div>
<input type="hidden" name="searching" value="yes" >
<br>
<input type="submit" name="search" value="Wyszukaj" > 
<input type=button onClick="location.href='index.php'" value='Wyczyść'><br>
<input type=button onClick="location.href='pomoc.php'" value='Pomoc'>
</div>
</form>
 

 
<? 

 if ($searching =="yes") 
 { 
 echo "<h2>Wynik szukania:</h2><p>"; 
 
 if ($find == "<br>") 
 { 
 echo "<p>Proszę wpierw podać kryteria wyszukiwania."; 
 exit; 
 } 
 
 mysql_connect("host", "login", "hasło") or die(mysql_error()); 
 mysql_query( "set names utf8") ; 
 mysql_select_db("nazwaDB") or die(mysql_error()); 
 
 $find = strtoupper($find); 
 $find = strip_tags($find); 
 $find = trim ($find); 
 $data = mysql_query("SELECT * FROM users WHERE upper($field) LIKE'%$find%'"); 
 
 while($result = mysql_fetch_array( $data )) 
 { 
 echo "<b>";
 echo $result['title']; 
 echo "</b><br>";
 echo $result['fname']; 
 echo "<br>"; 
 echo $result['lname']; 
 echo "<br>"; 
 echo $result['info']; 
 echo "<br>";
 echo "<br>";
 echo "<br>"; 

 } 
 $anymatches=mysql_num_rows($data); 
 if ($anymatches == 0) 
 { 
 echo "Wybacz, ale tu tego nie ma.<br><br>"; 
 } 
 

 } 
 ?> 		
								
</div>				
</center>
<br />
<br />
<div>


			

0

A gdzie masz mysql_error()?? (i gdzie masz zdefiniowane $field)

0

mysql_connect("host", "login", "hasło") or die(mysql_error()); <- tu?

0

Co mi to daje anyway? Poza tym czemu skrypt działał by na płatnym hostingu, a na domowym serwerze opartym o debiana nie śmiga...dokładnie 100% ten sam skrypt....?

0

Nie daje rady :( wszystkie 4 z 5 skryptów śmigają, ten jeden nie chce :( ... Walcze z tym od 8 rano. Teraz już błagam o pomoc.

Udało mi się uzyskać dostęp do dedyka na którym to utrzymuję, po konfiguracji php.ini widzę errory..

" Notice: Undefined variable: searching in /tel/index.php on line 56 "

Okej problem rozwiązany, w pliku php.ini zmieniłem wartość:

" register_globals = Off " na ON. Teraz wsio działa.

1

Okej problem rozwiązany, w pliku php.ini zmieniłem wartość:

" register_globals = Off " na ON. Teraz wsio działa.

:O

Kto Cię nauczył używania REGISTER_GLOBALS?!?!?!?!?!?!?!?!?!?!
To skrajnie niebezpieczne i nowsze wersje PHP nawet tego nie oferują...
Czytaj: http://php.net/manual/en/security.globals.php

0

Aż sobie screena zrobiłem. Nikt mi nie uwierzy, że w 2012 roku ktoś intencjonalnie programuje z użyciem register_globals.

Dowiedzieliśmy się przynajmniej, że:

  1. Proserwer ma żałosną konfigurację.
  2. Administrator w pracy myśli i / lub wie co robi.
  3. Nie wiesz co to SQL Injection (oraz Injection w ogólności, patrz - register_globals).
  4. Nie wiesz co to PDO (patrząc na powyższe - małe piwo).
  5. Nie wiesz co to MVC (j.w.).

Dwa pytania:

  1. Strona online? Chętnie się pobawię.
  2. Kto zleca napisanie czegokolwiek osobie z wiedzą o programowaniu na poziomie Autora?
0

To bardzo proste, ktoś kto używa skryptu pomiędzy 2ma komputerami bez wyjścia na świat w sieci lokalnej :) A twój post poprawił mi dzień, wiemy już kto ma małego ptaka. Dzięki za " nie pomoc ".

0

Ty się może naucz przyjmować krytykę?
Koleś Ci w pewien sposób "pojechał" - ale słusznie, ponieważ robisz coś TOTALNIE ŹLE.
Ale nawet tak "mocno" napisany post nie sprawił, że coś do Ciebie dotarło - lepiej powiedzieć komuś, że ma małego peniska i olać fakt, że TY robisz coś źle.

1 użytkowników online, w tym zalogowanych: 0, gości: 1