problemen met PHP_SELF en variable

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Pascal vanholder

pascal vanholder

20/10/2012 17:44:57
Quote Anchor link
Hallo,

ik ben bezig met een zoekpagina op mijn website.
Via een formulier kan ik bepaalde dingen aan klikken voor een zoek opdracht in mysql doen.
Nu heb ik een probleem, ik ontvang wel degelijk mijn variable op mijn verwerkpagina van mijn formulier
maar door dat ik werk met 'PHP_SELF' voor een pagina indeling verlies ik de waarde van mijn variable.
de code bevindt zich hierbij.

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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
<?php
$search
= $_POST["SEARCH_CHOICE_1"];
require("mysql_connect.inc.php"); // maak verbinding met de database

$verbinding = mysql_connect(MYSQL_SERVER, MYSQL_GEBRUIKERSNAAM, MYSQL_WACHTWOORD) or die(mysql_error());
        mysql_select_db("website") or die(mysql_error());
error_reporting(E_ALL);    




$res1 = mysql_query("SELECT COUNT(username) FROM profiel") or die("res1: ".mysql_error()); // vraag het AANTAL items op
$items_totaal = mysql_result($res1, 0); // het totaal aantal items
mysql_free_result($res1); // geef het resultaat vrij

$items_per_pagina = 1; // vrij te kiezen
$aantal_paginas =  ceil($items_totaal / $items_per_pagina); // het aantal items per pagina

// de huidige pagina opvragen

$huidige_pagina = 0; // default
if(isset($_GET['p']) && is_numeric($_GET['p']) && $_GET['p'] > 0 && $_GET['p'] < $aantal_paginas) {
    $huidige_pagina = $_GET['p'];
}


if ($search == 'SEARCH_ALL') {
// items van de huidige pagina ophalen
$offset = $huidige_pagina * $items_per_pagina;
$res2 = mysql_query("SELECT * FROM profiel ORDER BY username DESC LIMIT ".$offset.","
.$items_per_pagina) or die("res2:". mysql_error());


//doe hier iets met de gegevens in $res2
while($record = mysql_fetch_assoc($res2)){
echo "<table border=0 width=60% summary=>";
echo "<tr><td width=35%>";
echo $username = $record["username"];
echo "</td><td>";
$afbeelding = $record["afbeelding"];
echo "<center><br><img src='users/tmbk/".$afbeelding."' border=2 ><br><br></center>";
echo "</td></tr></table>" ;
}



// resultaten vrijgeven
mysql_free_result($res2);
}


// navigatie
for($i = 0; $i < $aantal_paginas; $i++) {
    if($huidige_pagina == $i) {
        // huidige pagina is niet klikbaar
        echo "<b>".($i+1)."</b>";
    }
else {
        // een andere pagina dan de huidige is wel klikbaar
        echo "<a href=\"".$_SERVER['PHP_SELF']."?p=".$i."\">".($i+1)."</a>";
    }

   // deel-streepje tussen alle items
    if($i < $aantal_paginas - 1) {
        echo " - ";
    }
}

?>


De eerste pagina geeft hij correct weer, maar als ik doorga na de tweede pagina krijg ik volgende foutmelding

Notice: Undefined index: SEARCH_CHOICE_1 in C:\Users\scalle\Desktop\website editors en hulp\USBWebserver v8_nl\root\website\look.php on line 3

Ik geraak er niet uit hoe ik dit moet oplossen.

Heeft er iemand een idee hoe dit kan opgelost worden.
Hopend op een oplossing wil ik jullie reeds bedanken.
 
PHP hulp

PHP hulp

22/11/2024 15:57:22
 
Eddy E

Eddy E

20/10/2012 19:56:30
Quote Anchor link
Als je niet zoekt is $_POST['SEARCH_CHOICE_1'] nog niet gemaakt.

Dit werkt:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
$search
= '';
if(isset($_POST["SEARCH_CHOICE_1"]) AND !empty($_POST["SEARCH_CHOICE_1"])
    {

    $search = $_POST["SEARCH_CHOICE_1"];
    }

?>
Gewijzigd op 20/10/2012 20:02:07 door Eddy E
 
Pascal vanholder

pascal vanholder

22/10/2012 00:33:03
Quote Anchor link
hallo Eddy,

Ik heb jou deel php code vooraan in mijn code geplaatst maar dan krijg ik de volgende foutmelding
Parse error: syntax error, unexpected '{
 
Ivo Breeden

Ivo Breeden

22/10/2012 00:39:45
Quote Anchor link
Kom, niet zo kinderachtig. Voeg even zelf de ontbrekende ")" toe. Gewoon even tellen, er moeten evenveel "(" als ")" zijn.
 
Pascal vanholder

pascal vanholder

22/10/2012 01:00:03
Quote Anchor link
ja sorry hoor, maar soms kijk je daar gewoon over. Ben nog een leek in het opsporen van fouten.
maar bedankt voor het antwoord
 
Mark Strijbos

Mark Strijbos

22/10/2012 01:51:41
Quote Anchor link
zodra je "doorklikt" naar een volgende pagina, ontvangt je verwerk-pagina een nieuwe POST array waarin de SEARCH_CHOICE_1 niet opgenomen is. Die moet je handmatig toevoegen aan de volgende pagina link OF je zet een cookie om die waarde door te geven.
 
Pascal vanholder

pascal vanholder

23/10/2012 22:21:42
Quote Anchor link
bedankt voor de mogelijke oplossingen.
Ik ben tot de oplossing gekomen om de variable bij elke keer dat ik naar een andere pagina navigeer hem terug met de url te verzenden.
de regel
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php echo "<a href=\"".$_SERVER['PHP_SELF']."?p=".$i."\">".($i+1)."</a>";?>

is nu geworden
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
echo "<a href=\"".$_SERVER['PHP_SELF']."?p=".$i."&SEARCH_CHOICE_1=".$search."\">".($i+1)."</a>";
?>

en bovenaan zet ik deze regel:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php $search = $_GET["SEARCH_CHOICE_1"];?>


bedankt voor mij goede raad allemaal te geven
Gewijzigd op 23/10/2012 22:28:34 door pascal vanholder
 



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.