user session life search

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

George mendel

george mendel

05/06/2016 21:34:28
Quote Anchor link
Dag allemaal

ik heb een script geschreven waarbij je kan zoeken door verschillende records.
Deze werkt goed, alleen als ik session bij de query zet, dan werkt de life search niet meer.

Dit mijn script.

index.html
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
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
                <div class="container">
      <div class="">
        <h3>Klanten overzicht</h3>
        <div class="">
        <table id="employee_grid" class="display" width="100%" cellspacing="0">
        <thead>
            <tr>
                <th>Klantnummer</th>
                <th>Naam</th>
                        <th>Contactpersoon</th>
                <th>Adres</th>
            </tr>
        </thead>
 
        <tfoot>
            <tr>
               <th>Klantnummer</th>
                <th>Naam</th>
                        <th>Contactpersoon</th>
                <th>Adres</th>
                
            </tr>
        </tfoot>
    </table>
    </div>
      </div>

    </div>

<script type="text/javascript">
$( document ).ready(function() {
$('#employee_grid').DataTable({
                 "bProcessing": true,
         "serverSide": true,
         "ajax":{
            url :"response.php", // json datasource
            type: "post",  // type of method  ,GET/POST/DELETE
            error: function(){
              $("#employee_grid_processing").css("display","none");
            }
          }
        });  
});
</script>
[/quote]

Response.php
[quote]

<?php
    //include connection file
    include_once("connection.php");
    session_start();
   if (!isset($_SESSION['GEBRUIKER_ID'])) {
   header ("Location: ");
   die;
}


    
    // initilize all variable
    $params = $columns = $totalRecords = $data = array();

    $params = $_REQUEST;

    //define index of column
    $columns = array(
        0 =>'id',
        1 =>'user_id',
        2 => 'klant_id',
        3 => 'naam_klant',
        4 => 'contactpersoon',
        5 => 'adres'
    );

    $where = $sqlTot = $sqlRec = "";
    
    // check search value exist
    if( !empty($params['search']['value'])) {  
        $where .=" WHERE ";
        $where .=" ( naam_klant LIKE '".$params['search']['value']."%' ";    
        $where .=" OR contactpersoon LIKE '".$params['search']['value']."%' ";

        $where .=" OR adres LIKE '".$params['search']['value']."%')";
    }


    // getting total number records without any search
        $sql = "SELECT id,naam_klant,contactpersoon,adres FROM klanten WHERE user_id='".$_SESSION['GEBRUIKER_ID']."' ";
    $sqlTot .= $sql;
    $sqlRec .= $sql;
    //concatenate search sql if value exist
    if(isset($where) && $where != '') {

        $sqlTot .= $where;
        $sqlRec .= $where;
    }



     $sqlRec .=  " ORDER BY ". $columns[$params['order'][0]['column']]."   ".$params['order'][0]['dir']."  LIMIT ".$params['start']." ,".$params['length']." ";

    $queryTot = mysqli_query($conn, $sqlTot) or die("database error:". mysqli_error($conn));


    $totalRecords = mysqli_num_rows($queryTot);

    $queryRecords = mysqli_query($conn, $sqlRec) or die("error to fetch employees data");

    //iterate on results row and create new index array of data
    while( $row = mysqli_fetch_row($queryRecords) ) {
        $data[] = $row;
    }
    

    $json_data = array(
            "draw"            => intval( $params['draw'] ),  
            "recordsTotal"    => intval( $totalRecords ),  
            "recordsFiltered" => intval($totalRecords),
            "data"            => $data   // total data array
            );

    echo json_encode($json_data);  // send data as json format
?>

- Ariën -:
Gelieve in het vervolg bij code de [code][/code]-tags gebruiken.
Hier kan je meer lezen over de mogelijke opmaakcodes.
Alvast bedankt!
Gewijzigd op 05/06/2016 23:31:02 door - Ariën -
 
PHP hulp

PHP hulp

29/04/2024 14:03:50
 
- Ariën  -
Beheerder

- Ariën -

05/06/2016 23:31:16
Quote Anchor link
Wat werkt er dan niet aan? Wat gebeurt er?
 
George mendel

george mendel

05/06/2016 23:55:18
Quote Anchor link
SELECT id,naam_klant,contactpersoon,adres FROM klanten WHERE user_id='".$_SESSION['GEBRUIKER_ID']."' ";

Deze query gebruik ik om de klanten van de ingelogde persoon weer te geven. Dat lukt ook, maar dan werkt de zoekfunctie die in javascript is geprogrammeerd niet meer.
Deze werkt wel als ik de query zo zet:

SELECT id,naam_klant,contactpersoon,adres FROM klanten";

De bedoeling is dat de gebruiker een overzicht krijgt van zijn klanten en aan de hand daarvan kan zoeken via een life search gemaakt in javascript.
 
- Ariën  -
Beheerder

- Ariën -

06/06/2016 09:17:25
Quote Anchor link
Welke error krijg je precies? En heb je de query al in een string gezet, zodat je die uiteindelijk kan echo'en?
 
George mendel

george mendel

06/06/2016 11:03:55
Quote Anchor link
- Ariën - op 06/06/2016 09:17:25:
Welke error krijg je precies? En heb je de query al in een string gezet, zodat je die uiteindelijk kan echo'en?


Ik krijg geen error, alleen de zoekfunctie werkt dan niet meer als ik de session bij de where query zet. maar hij toont wel de juiste klanten die horen bij die user.
 
Thomas van den Heuvel

Thomas van den Heuvel

06/06/2016 11:42:19
Quote Anchor link
Een heleboel pijlen wijzen in de richting van de sessie. Dan zou ik eens kijken naar de inhoud van $_SESSION, specifiek naar de waarde op index 'GEBRUIKER_ID' en of deze mogelijk in combinatie met isset() false oplevert.
 
George mendel

george mendel

08/06/2016 12:49:31
Quote Anchor link
Thomas van den Heuvel op 06/06/2016 11:42:19:
Een heleboel pijlen wijzen in de richting van de sessie. Dan zou ik eens kijken naar de inhoud van $_SESSION, specifiek naar de waarde op index 'GEBRUIKER_ID' en of deze mogelijk in combinatie met isset() false oplevert.


ik begrijp niet wat je bedoelt. Je hebt toch altijd een isset nodig om session gebruiker id op te roepen?
 
Thomas van den Heuvel

Thomas van den Heuvel

08/06/2016 13:36:20
Quote Anchor link
isset() is geen magische incantatie.

Met isset() controleer je simpelweg op het bestaan van een variabele. Wat in dit geval verstandig is.

Indien de variabele niet bestaat of de waarde null is retourneert isset() false.

De header() redirect is curieus, waar zou deze naartoe moeten redirecten? Kun je niet gewoon het script beëindigen en de header weglaten indien de sessievariabele niet bestaat?

Mogelijk wil je ook kijken naar hoe je uiteindelijke query er uit komt te zien en of deze ook resultaten op kan leveren.

En waarschijnlijk bedoel je live search, niet life search.
 



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.