opzich toch raar als ik de cookies zelf handmatig heb verwijderd??quote:Op zaterdag 8 juli 2006 17:37 schreef wipes66 het volgende:
[..]
Niks, waarschijnlijk is $_COOKIE gewoon een lege array.
1 2 3 4 5 6 7 8 9 10 | if ($_GET['order'] = 'km' ) { $result = mysql_query('SELECT tijd, km, prijs FROM qu63 ORDER BY km, tijd'); } elseif ($_GET['order'] = 'tijd') { $result = mysql_query('SELECT tijd, km, prijs FROM qu63 ORDER BY tijd, km'); } ?> |
== ipv = dusquote:Op zondag 9 juli 2006 19:51 schreef qu63 het volgende:
[ code verwijderd ]
de url is gewoon blabla.php?order=km of order=tijd. alleen werkt dat dus niet. wat is er verkeerd aan bovenstaand stukje
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 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 | if ($_REQUEST['do'] == 'login') { globalize($_REQUEST, array( 'vb_login_username' => STR, 'vb_login_password' => STR, 'vb_login_md5password' => STR, 'vb_login_md5password_utf' => STR, 'url' => STR, 'postvars' )); globalize($_POST, array( 'logintype' => STR, )); // can the user login? $username = &$vb_login_username; $password = &$vb_login_password; $md5password = &$vb_login_md5password; $md5password_utf = &$vb_login_md5password_utf; $strikes = verify_strike_status($username); if ($username == '') { eval(print_standard_error('error_badlogin')); } if (!verify_authentication($username, $password, $md5password, $md5password_utf, true)) { // check password exec_strike_user($bbuserinfo['username']); if ($logintype === 'cplogin' OR $logintype === 'modcplogin') { // log this error if attempting to access the control panel require_once('./includes/functions_log_error.php'); log_vbulletin_error($username, 'security'); } $bbuserinfo = array( 'userid' => 0, 'usergroupid' => 1 ); eval(print_standard_error('error_badlogin')); } exec_unstrike_user($username); $DB_site->query("DELETE FROM " . TABLE_PREFIX . "session WHERE sessionhash = '" . addslashes($session['dbsessionhash']) . "'"); $session['sessionhash'] = fetch_sessionhash(); $session['dbsessionhash'] = $session['sessionhash']; $DB_site->query(" INSERT INTO " . TABLE_PREFIX . "session (sessionhash, userid, host, idhash, lastactivity, styleid, loggedin, bypass, useragent) VALUES ('" . addslashes($session['sessionhash']) . "', " . intval($bbuserinfo['userid']) . ", '" . addslashes(SESSION_HOST) . "', '" . addslashes(SESSION_IDHASH) . "', " . TIMENOW . ", $session[styleid], 1, " . iif ($logintype === 'cplogin', 1, 0) . ", '" . addslashes(USER_AGENT) . "') "); vbsetcookie('sessionhash', $session['sessionhash'], 0); if ($nosessionhash == 1) { // if user is working through cookies, blank out the sessionhash $shash = $session['sessionhash'] = ''; $surl = $session['sessionurl'] = ''; $surlJS = $session['sessionurl_js'] = ''; } else { $shash = $session['sessionhash']; $surl = $session['sessionurl'] = 's=' . $session['sessionhash'] . '&'; $surlJS = $session['sessionurl_js'] = 's=' . $session['sessionhash'] . '&'; } // admin control panel or upgrade script login if ($logintype === 'cplogin') { $permissions = cache_permissions($bbuserinfo, false); $bbuserinfo['permissions'] = &$permissions; if ($permissions['adminpermissions'] & CANCONTROLPANEL) { // update CSS preferences if administrator wants to globalize($_POST, array('cssprefs' => STR)); if ($cssprefs != '') { $cssprefs = str_replace(array('..', '/', '\\'), '', $cssprefs); // get rid of harmful characters if ($cssprefs != '' AND @file_exists("./cpstyles/$cssprefs/controlpanel.css")) { $DB_site->query("UPDATE " . TABLE_PREFIX . "administrator SET cssprefs = '" . addslashes($cssprefs) . "' WHERE userid = $bbuserinfo[userid]"); } } $cpsession = fetch_sessionhash(); $DB_site->query("INSERT INTO " . TABLE_PREFIX . "cpsession (userid, hash, dateline) VALUES ($bbuserinfo[userid], '" . addslashes($cpsession) . "', " . TIMENOW . ")"); vbsetcookie('cpsession', $cpsession, 0); if (!$_REQUEST['cookieuser'] AND empty($_COOKIE[COOKIE_PREFIX . 'userid'])) { vbsetcookie('userid', $bbuserinfo['userid'], 0); vbsetcookie('password', md5($bbuserinfo['password'] . 'L43312e7'), 0); } } } // moderator control panel login if ($logintype === 'modcplogin') { $permissions = cache_permissions($bbuserinfo, false); $bbuserinfo['permissions'] = &$permissions; include_once('./includes/functions_calendar.php'); if (can_moderate() OR can_moderate_calendar()) { $cpsession = fetch_sessionhash(); $DB_site->query("INSERT INTO " . TABLE_PREFIX . "cpsession (userid, hash, dateline) VALUES ($bbuserinfo[userid], '" . addslashes($cpsession) . "', " . TIMENOW . ")"); vbsetcookie('cpsession', $cpsession, 0); if (!$_REQUEST['cookieuser'] AND empty($_COOKIE[COOKIE_PREFIX . 'userid'])) { vbsetcookie('userid', $bbuserinfo['userid'], 0); vbsetcookie('password', md5($bbuserinfo['password'] . 'L43312e7'), 0); } } } if ($url == 'login.php' OR $url == "$vboptions[forumhome].php" OR strpos($url, 'do=logout') !== false) { $url = "$vboptions[forumhome].php?$surl"; } else { $url = fetch_replaced_session_url($url); } $postvars = construct_hidden_var_fields($postvars); $temp = strpos($url, '?'); if ($temp) { $formfile = substr($url, 0, $temp); } else { $formfile = $url; } eval(print_standard_redirect('redirect_login')); |
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 | // this was a _REQUEST action but where do we all login via request? if ($_POST['do'] == 'login') { $vbulletin->input->clean_array_gpc('p', array( 'vb_login_username' => TYPE_STR, 'vb_login_password' => TYPE_STR, 'vb_login_md5password' => TYPE_STR, 'vb_login_md5password_utf' => TYPE_STR, 'postvars' => TYPE_STR, 'cookieuser' => TYPE_BOOL, 'logintype' => TYPE_STR, 'cssprefs' => TYPE_STR, )); // can the user login? $strikes = verify_strike_status($vbulletin->GPC['vb_login_username']); if ($vbulletin->GPC['vb_login_username'] == '') { eval(standard_error(fetch_error('badlogin', $vbulletin->options['bburl'], $vbulletin->session->vars['sessionurl'], $strikes))); } if (!verify_authentication($vbulletin->GPC['vb_login_username'], $vbulletin->GPC['vb_login_password'], $vbulletin->GPC['vb_login_md5password'], $vbulletin->GPC['vb_login_md5password_utf'], $vbulletin->GPC['cookieuser'], true)) { ($hook = vBulletinHook::fetch_hook('login_failure')) ? eval($hook) : false; // check password exec_strike_user($vbulletin->userinfo['username']); if ($vbulletin->GPC['logintype'] === 'cplogin' OR $vbulletin->GPC['logintype'] === 'modcplogin') { // log this error if attempting to access the control panel require_once(DIR . '/includes/functions_log_error.php'); log_vbulletin_error($vbulletin->GPC['vb_login_username'], 'security'); } $vbulletin->userinfo = array( 'userid' => 0, 'usergroupid' => 1 ); eval(standard_error(fetch_error('badlogin', $vbulletin->options['bburl'], $vbulletin->session->vars['sessionurl'], $strikes))); } exec_unstrike_user($vbulletin->GPC['vb_login_username']); // create new session process_new_login($vbulletin->GPC['logintype'], $vbulletin->GPC['cookieuser'], $vbulletin->GPC['cssprefs']); // do redirect do_login_redirect(); } |
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 | // connect to database mysql_connect("localhost","root","1234"); mysql_select_db("c107p13"); // turn off auto-commit mysql_query("START TRANSACTION"); mysql_query("SET autocommit=0"); // look for a transfer $sql1 = "UPDATE accounts SET balance = balance + " . $_POST['amt'] . " WHERE id = " . $_POST['to']; $result1 = mysql_query($sql1); echo "Q1: ".$result1."<br>"; echo mysql_affected_rows($result1); // subtract $$ from source account $sql2 = "UPDATE accounts SET balance = balance - " . $_POST['amt'] . " WHERE id = " . $_POST['from']; $result2 = mysql_query($sql2); // assuming no errors, commit transaction echo mysql_num_rows($result2); if($result1 && $result2) { mysql_query("commit"); } else { mysql_query("rollback"); } echo "$result1"; echo "$result2"; ?> |
MySQL geeft trouwens aan hoeveel rows er echt gewijzigd zijn. Deze queryquote:Returns the number of affected rows on success, and -1 if the last query failed.
1 |
1 |
1 2 3 4 5 6 7 8 9 | $result = mysql_query($query); while ($row = mysql_fetch_object($result)){ if (isset($stukjes)){ $stukjes .= ", "; } $stukjes .= "\"".$row->Name."\""; } $string = "bla[1] = [".$stukjes."]"; |
maar als je dan naar de vorige foto wil heb je een probleem volgens mijquote:Op maandag 10 juli 2006 16:50 schreef Desdinova het volgende:
dat moet waarschijnlijk wel kunnen met limit.
tellen bij hoeveelste foto je bent, en dan in je query zetten limit ".$fotonummer.",1
op die manier begintie met tellen na de huidige foto,en paktie de eerstvolgende.
Zelf prutsen is ook een vak.....ik heb een beginnetje maar ik loop nu helemaal vast. Ik kan nu de karma van 1 baan berekenen maar ik wil graag een lijst met karma met bijbehorende tracknaam. Op dit moment doe ik dit dus:quote:Op zondag 9 juli 2006 12:44 schreef Oldbie het volgende:
Sinds een tijdje heb ik een gameserver met een MySQL database voor records e.d.
Nu wil ik graag een PHP pagina die voor mij e.e.a. weergeeft maar ik ben zo vreselijk n00b met MySQL en PHP dat ik wil vragen of hier iemand zo vriendelijk wil zijn om voor mij de code te schrijven.
Als ik helemaal out of line ben hoor ik dat wel.
Ik denk dat het vrij eenvoudig is omdat ik niet al te veel wil. Lay out is totaal onbelangrijk omdat het puur voor prive gebruik is en het wordt niet zichtbaar voor anderen.
Het gaat om het volgende:
Ik heb een table (rs_karma) met vier fields (Id, Score, PlayerId, ChallengeId) Screenshot
Ik heb een table (challenges) met vijf fields (Id, Uid, Name, Author, Environment) Screenshot
Field score (uit rs_karma) van iedere ChallengeId moet bij elkaar opgeteld worden (waarbij 0 gezien moet worden als -1; een 1 is dan +1).
Op mijn pagina zou ik dan een lijst willen zien van iedere challenge (naam wordt verkregen aan de hand van rs_karma.ChallengeId welke overeenkomt met challenges.Id) met hun totaalscore.
Zou iemand zo vriendelijk willen zijn om een mooi scriptje te bouwen zodat ik kan bepalen welke challenge een lage score heeft en dus van de server verwijderd mag worden?
Ik zou je eeuwig dankbaar zijn
als het zou helpen wil ik best een backup maken van de database en die naar je toe mailen
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | // connect to database mysql_connect("localhost","***","***"); mysql_select_db("aseco"); // calculate karma of track $pquery = "SELECT * FROM rs_karma WHERE Score=1 AND ChallengeId=3"; $pres = mysql_query($pquery); $plus = mysql_num_rows($pres); $mquery = "SELECT * FROM rs_karma WHERE Score=0 AND ChallengeId=3"; $mres = mysql_query($mquery); $minus = mysql_num_rows($mres); $avg_score = $plus - $minus; echo $avg_score; ?> |
Helaas nietquote:Op maandag 10 juli 2006 20:29 schreef qu63 het volgende:
[afbeelding]
hij werkt alleen niet met gifjes
Bedankt!quote:Op maandag 10 juli 2006 13:23 schreef SuperRembo het volgende:
mysql_num_rows gaat over het aantal rows in de resultset, maar die heb je niet bij een update. Hiervoor moet je mysql_affected_rows gebruiken:
[..]
MySQL geeft trouwens aan hoeveel rows er echt gewijzigd zijn. Deze query
[ code verwijderd ]
zal alltijd aangeven dat mysql_affected_rows = 0 is, ook al bestaan er rows met myvalue = 1.
[edit]
Ik zie dat je in je script wel mysql_affected_rows gebruikt en niet mysql_num_rows?
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |