user id hulp

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Projectx verheijden

projectx verheijden

06/03/2012 00:15:02
Quote Anchor link
hoi hallo allemaal,ik zit met een kleine vraag en hoop dat iemand mij kan helpen.

ik heb een website met een like button,dus als ingelogde leden erop klikken dan vinden ze dat leuk en wordt dat in mijn database geregistreerd.nu is het probleem dat ik op het moment een code heb die alleen voor mijzelf bestemd is.en dat is niet de bedoeling.

hieronder laat ik de code zien.waar nummer 1 staat moet dus iets komen zodat niet alleen ik erop kan klikken wat nu net het groote probleem is.er moet op de plaats van de nummer 1 iets komen te staan zodat ieder ingelogd lid kan klikken erop.want in mijn data base geeft hij constant mijn user_id aan.wie kan mij helpen ik zit met mijn handen in het haar.


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
    session_start();
    $_SESSION['user_id'] = '1';
    include 'db/connect.php';
    include 'func/articles.php';
    include 'func/like.php';
    ?>



groeten van angelo knarren
 
PHP hulp

PHP hulp

21/11/2024 20:37:39
 
Reshad F

Reshad F

06/03/2012 00:33:44
Quote Anchor link
je bent nu aan het hardcoden... dus je zal altijd de user_id 1 krijgen

je moet daar een variable achter zetten die verwijst naar de id in je database dus iets in de trend van $user_id of wat je ook gebruikt
 
Projectx verheijden

projectx verheijden

06/03/2012 01:35:16
Quote Anchor link
nog iemand wat suggesties.probeer van alles maar kom er niet uit.heb al andere naam woorden uit mijn data base gebruikt maar niks.dit is de code op het moment.


heb session start weg gelaten.zoals in het eerste berricht vermeld.
gaf alleen maar meer errors aan.zoals hij nu is werkt het alleen onder mijn user_id user_id '1' en daar moet ik wat anders op vinden.zodat andere gebruikers ook gebruik kunnen maken van de like button.mvg

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php

$_SESSION
['user_id'] = '1' ;

include 'db/connections.php';
include 'functions/articles.php';
include 'functions/like.php';

?>
Gewijzigd op 06/03/2012 01:46:41 door projectx verheijden
 
Frank WD

Frank WD

06/03/2012 02:00:28
Quote Anchor link
Ik denk dat je met wat meer code of info moet komen om geholpen te worden.
Wat je nu laat zien is alleen ma 3 include file's en een session code waar je de user_id hardcore aangeeft. Dit gaf Reshadd ook al aan net.
 
Projectx verheijden

projectx verheijden

06/03/2012 02:01:31
Quote Anchor link
zal direct wat meer code doorsturen.

Toevoeging op 06/03/2012 02:07:43:

dit is wat ik heb.


de like.php code

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
<?php
function article_exists($article_id) {
     $article_id = (int)$article_id;
     return (mysql_result(mysql_query("SELECT COUNT(`article_id`) FROM `articles` WHERE `article_id` = $article_id"), 0) == 0) ? false : true;
}

function
previously_liked($article_id) {
    $article_id = (int)$article_id;
    return (mysql_result(mysql_query("SELECT COUNT(`like_id`) FROM `likes` WHERE `user_id` = ".$_SESSION['user_id']." AND `article_id` = $article_id"), 0) == 0) ? false : true;            
}

function
like_count($article_id) {
    $article_id = (int)$article_id;
    return (int)mysql_result(mysql_query("SELECT `article_likes` FROM `articles` WHERE `article_id` = $article_id"), 0, 'article_likes');
}

function
add_like($article_id) {
     $article_id = (int)$article_id;
     mysql_query("UPDATE `articles` SET `article_likes` = `article_likes` + 1 WHERE `article_id` = $article_id");
     mysql_query("INSERT INTO `likes` (`user_id`, `article_id`) VALUES (".$_SESSION['user_id'].", $article_id)");
}

?>





dit is de articles.php code.

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
<?php
function get_articles() {
    $articles = array();
    
    $query = mysql_query("SELECT `article_id`, `article_title`, `article_likes` FROM `articles`");
    while (($row = mysql_fetch_assoc($query)) !== false) {
       $articles[] = array(
           'article_id' => $row['article_id'],
           'article_title'=> $row['article_title'],
           'article_likes'=> $row['article_likes']
       );
    }

    return $articles;
}

?>




de index-klik.php code

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
include 'core/initmap.php';
?>



<!doctype html>
<head>
<title>articles</title>
<link rel="stylesheet" href="cssmap/style.css" />
</head>
<body>
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?php
  $articles
= get_articles();
  if (count($articles) == 0) {
     echo 'sorry no articles there';
  }
else {
     echo '<ul>';
     foreach ($articles as $article) {
         echo '<li><p>', $article['article_title'], '</p><p><a class="like" href="#" onclick="like_add(', $article['article_id'], ');">like</a> <span id="article_', $article['article_id'], '_likes">', $article['article_likes'], '</span> like this </p></li>';  
     }

     echo '</ul>';
  }

  ?>

<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript" src="js/like.js"></script>
</body>
</html>



en de like.js code


function like_add(article_id) {
$.post('ajax/like_add.php', {article_id:article_id}, function(data) {
if (data == 'success') {
like_get(article_id);
} else {
alert(data);
}
});
}

function like_get(article_id) {
$.post('ajax/like_get.php', {article_id:article_id}, function(data) {
$('#article_'+article_id+'_likes').text(data);
});
}



like_add.php code

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?php
    include '../core/initmap.php';
    if (isset($_POST['article_id'], $_SESSION['user_id']) && article_exists($_POST['article_id'])) {
    $article_id = $_POST['article_id'];
    if (previously_liked($article_id) === true) {
    echo 'je hebt al meegedaan met deze enquete.';
    }
else {
    add_like($article_id);
         echo 'success';
    }
    }

    ?>



like_get.php code


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
    include '../core/initmap.php';
    if (isset($_POST['article_id'], $_SESSION['user_id']) && article_exists($_POST['article_id'])) {
    echo like_count($_POST['article_id']);
    }

    ?>



mocht er meer nodig zijn hoor ik het heel graag.mvg

Toevoeging op 06/03/2012 02:12:16:

ik heb ook nog de user.func.php code voor u.

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
<?php
function logged_in() {
  return isset($_SESSION['user_id']);
}


function
login_check($email, $password) {
    $email = mysql_real_escape_string($email);
    $login_query = mysql_query("SELECT COUNT(`user_id`) as `count`, `user_id` FROM `users` WHERE `email`='$email' AND `password`='".md5($password)."'");  
    return (mysql_result($login_query, 0) == 1) ? mysql_result($login_query, 0, 'user_id') : false;
}


function
user_data() {
  $args = func_get_args();
  $fields = '`'.implode('`, `', $args).'`';

   $query = mysql_query("SELECT $fields FROM `users` WHERE `user_id`=".$_SESSION['user_id']);
   $query_result = mysql_fetch_assoc($query);
   foreach ($args as $field) {
     $args[$field] = $query_result[$field];

   }


   return $args;  
}


function
user_register($email, $name, $password) {
  $email = mysql_real_escape_string($email);
  $name = mysql_real_escape_string($name);
  mysql_query("INSERT INTO `users` VALUES ('', '$email', '$name', '".md5($password)."')");
  return mysql_insert_id();
}



function
user_exists($email) {
   $email = mysql_real_escape_string($email);
   $query = mysql_query("SELECT COUNT(`user_id`) FROM `users` WHERE `email`='$email'");
   return (mysql_result($query, 0) == 1) ? true : false;
}


?>
 
Frank WD

Frank WD

06/03/2012 02:21:57
Quote Anchor link
En als je probeert:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
    session_start();
    $_SESSION['user_id'] = $_SESSION['user_id'];
    include 'db/connect.php';
    include 'func/articles.php';
    include 'func/like.php';
?>


Want je wilt de user_id mee geven lijkt mij.
Maar dit is eigenlijk ook weer overbodig variabellen copyeren.
Gewijzigd op 06/03/2012 02:22:35 door Frank WD
 
Projectx verheijden

projectx verheijden

06/03/2012 02:24:34
Quote Anchor link
als ik deze code invoer krijg ik deze melding te zien.

Parse error: syntax error, unexpected T_STRING in /home/id2918/domains/mijndagcash.nl/public_html/core/initmap.php on line 3

Toevoeging op 06/03/2012 02:40:17:

bij include 'func/articles.php
en include 'func/like.php


is de code zo.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php
session_start();
$_SESSION['user_id'] = $_SESSION ['user_id'];

include 'db/connections.php';
include 'functions/articles.php';
include 'functions/like.php';

?>




zie net pas de fout hierboven.maar werkt nog steeds niet.

Toevoeging op 06/03/2012 02:51:50:

hij registreerd nu wel de ingelogde leden.maar krijg een warning melding.ik schrijf hem even over en plaats hem.alvast bedankt voor de hulp dat de geregistreerde leden kunnen voten via de like button.mvg

Toevoeging op 06/03/2012 02:58:03:

deze melding krijg ik op het moment.het registreren van de user_id werkt.zit nu nog met deze melding.

<br />
<b>warning</br>: session_start()[<a href='function.session-start'>function.session-start</a>]:cannot send session
cache limiter - headers already sent (output started at /home/id2918/domains/mijndagcash.nl/public_html
/ajax/like_add.php:1) in <b>/home/id2918/domains/mijndagcash.nl/publick_html.core/initmap.php</b> on line <b>2</b><br
/>


mvg hr knarren

Toevoeging op 06/03/2012 03:50:49:

hallo ik zag net in mijn bestanden een map die genaamd is init.php
daar staat ook een session_start in.kan het mischien zijn dat ie deze ook gebruikt.en zal ik de code die in initmap.php moeten invoegen bij init.php

of maakt dat niks uit waar de session_start staat.als het maar in verschillende mappen staat.??

mvg
Gewijzigd op 06/03/2012 03:18:33 door projectx verheijden
 
- Raoul -

- Raoul -

06/03/2012 08:04:20
Quote Anchor link
session_start() zet je meestal, denk ik, in jouw geval in het config bestand
 
Projectx verheijden

projectx verheijden

06/03/2012 08:14:39
Quote Anchor link
ja ik heb het net aangepast,heb alles wat in de initmap.php stond naar de init.php map verplaatst ik hou dus nog maar een keer een session_start(); over.

hij doet het perfect de leden worden na klikken geregistreerd.
hij geeft me alleen nog een warning aan.ben nu aan het zoeken wat dat kan zijn.
mischien weet iemand het......

dit geeft hij aan.

<br />
<b>warning</br>: session_start()[<a href='function.session-start'>function.session-start</a>]:cannot send session
cache limiter - headers already sent (output started at /home/id2918/domains/mijndagcash.nl/public_html
/ajax/like_add.php:1) in <b>/home/id2918/domains/mijndagcash.nl/publick_html.init.php</b> on line <b>2</b><br
/>



je hebt al eens geklikt op de like button.





hij meld dus ook dat ik all eens geklikt heb.alleen die warning erboven kom ik niet uit.het staat ook netjes in de database geregistreerd.


de init.php map op het moment

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
ob_start();
session_start();
$_SESSION['user_id'] = $_SESSION['user_id'];

mysql_connect('localhost', 'root', '');
mysql_select_db('visualupload');

include 'func/user.func.php';
include 'core/articles.php';
include 'core/like.php';

?>





dit is de like_add.php pagina


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?php
    include '../init.php';
    if (isset($_POST['article_id'], $_SESSION['user_id']) && article_exists($_POST['article_id'])) {
    $article_id = $_POST['article_id'];
    if (previously_liked($article_id) === true) {
    echo 'je hebt al meegedaan met deze enquete.';
    }
else {
    add_like($article_id);
         echo 'success';
    }
    }

    ?>



in mijn logout file staat ook een session_start.kan het anders hiermee temaken hebben omdat hij ook in de warning 2 keer de session_start aangeeft als mogelijke fout.of heb ik dat verkeerd???

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
session_start();
session_destroy();
header('Location: index.php');
exit();

?>





mvg
Gewijzigd op 06/03/2012 08:37:28 door projectx verheijden
 
Obelix Idefix

Obelix Idefix

06/03/2012 09:30:35
Quote Anchor link
$_SESSION['user_id'] = $_SESSION ['user_id']; heeft volgens mij geen enkele zin.

De foutmelding geeft aan wat er fout gaat en waar het fout gaat.

ob_start(); --> niet gebruiken. Als je op de juiste manier script heb je dat doorgaans niet nodig.

Zet error-reporting aan, bovenaan in je script.
 



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.