Geupdate naar php5 script werkt niet meer:(

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Nick

Nick

27/04/2008 11:25:00
Quote Anchor link
Ik heb zojuist me server geupdate naar php5 en me script werkt spontaan niet meer krijg telkens
'Er is geen artiest aangeklikt, of de artiest die jij gekozen hebt bestaat niet.

Heeft iemand een tip voor me ben radelooos.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<?php


mysql_connect(1111,1111,1111) or die(mysql_error());
mysql_select_db(1111);

function
reac($value){
$value = addslashes($value);
$value = nl2br($value);
$value = htmlspecialchars($value);
return $value;
}

error_reporting(1);
?>

    <?
    $db
= mysql_query("SELECT * FROM `rappers` WHERE `naam`='$rapper'");
    $rap = mysql_fetch_object($db);
    $check = mysql_num_rows($db);
    $rapper = $_GET['rapper'];
    {

    $titel = "$rapper";
    }
    
    if($check ==0 ){
    die("<script>alert('Er is geen artiest aangeklikt, of de artiest die jij gekozen hebt bestaat niet.');</script>");
    }

    if($HTTP_X_FORWARDED_FOR == ''){
    $IP                                = $_SERVER['REMOTE_ADDR'];
    }
else{
    $IP                                = $HTTP_X_FORWARDED_FOR;
    }

?>
Gewijzigd op 01/01/1970 01:00:00 door Nick
 
PHP hulp

PHP hulp

22/12/2024 12:21:44
 
TJVB tvb

TJVB tvb

27/04/2008 11:32:00
Quote Anchor link
Dit lijkt me een geval van register globals. Waar komt $rappers vandaan?
Waarschijnlijk heb je een formulier waarmee je die gegevens verstuurd.
Je zult de waarde dan uit $_POST['rappers'] of $_GET['rappers'] moeten halen (ligt eraan welke methode het formulier gebruikt)

Verder lijkt het me verstandig om even te zoeken op SQL injection
http://www.phphulp.nl/php/tutorials/3/444/
Ook de beginners handleiding ( http://www.phphulp.nl/php/tutorials/8/575/ ) heeft wat handige dingen bijvoorbeeld over het buiten quotes halen van je variabelen.
 
GaMer B

GaMer B

27/04/2008 11:33:00
Quote Anchor link
Tip: Script netjes en geeft variabelen een goede naam. Bijvoorbeeld de variabel $db slaat dus nergens op; geeft het liever als naam: $res (omdat het een mysql result bevat).

Verder zet je script even tussen tags.
 
Nick

Nick

27/04/2008 11:36:00
Quote Anchor link
Ik heb echt geen verstand van php heb het script ook al op een server van een vriend geprobeert werkt ook niet en het script wordt aangeroepen via: index.php?p=rappers&rapper=NaamRapper met php4 werkte alles goed tot php5 update kwam en werkt op alle php5 machines niet.
 
Jesper Diovo

Jesper Diovo

27/04/2008 11:44:00
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
    $rapper
= $_GET['rapper'];
    {

    $titel = "$rapper";
    }

?>

Daar zal de fout zitten :-).
 
Nick

Nick

27/04/2008 11:47:00
Quote Anchor link
Wat zal dan de goede weg zijn?

Gr Nick
 
Jesper Diovo

Jesper Diovo

27/04/2008 11:51:00
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
    $db
= mysql_query("SELECT * FROM `rappers` WHERE `naam`='$rapper'");
    $rap = mysql_fetch_object($db);
    $check = mysql_num_rows($db);
    $rapper = $_GET['rapper'];
    {

    $titel = "$rapper";
    }
    
    if($check ==0 ){
    die("<script>alert('Er is geen artiest aangeklikt, of de artiest die jij gekozen hebt bestaat niet.');</script>");
    }

    if($HTTP_X_FORWARDED_FOR == ''){
    $IP                                = $_SERVER['REMOTE_ADDR'];
    }
else{
    $IP                                = $HTTP_X_FORWARDED_FOR;
    }

?>

Moet worden:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php
if(isset($_GET['rapper'])) {
  $rapper = mysql_real_escape_string($_GET['rapper']);
  $query = "SELECT * FROM rappers WHERE rapper = '".$rapper."'";
  $result = mysql_query($query);
  if($result && mysql_num_rows($result) > 0) {
    // meer resultaten dan 0
  } else {
    echo "De artiest die jij gekozen hebt bestaat niet.";
  }


  // ik neem aan dat $HTTP_X_FORWARDED_FOR een zelfgedefinieerde variabele is?
  if($HTTP_X_FORWARDED_FOR == "") {
    $ip = $_SERVER['REMOTE_ADDR'];
  }
else {
    $ip = $HTTP_X_FORWARDED_FOR;
  }
}
else {
  echo "Je hebt geen artiest gekozen.";
}

?>
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.