KT27 Ierakstīts Maijs 23, 2020 Share Ierakstīts Maijs 23, 2020 (labots) sveiki, nepieciešama palīdzība, nedarbojas UPDATE mysql , memberID iekš foreach(); nedarbojas korekti, apdeits tiek veikts tikai pedejam ierakstam, varbut var kads palīdzēt kur esmu iestrēdzis un ko daru nepareizi, ir dropdowns ( Quote echo '<td><form method="post" action=""><select name="bannerTitle" onchange="this.form.submit()">'.$op_bn.'</select></form</td>'; ) kas ņem no db datus un caur if($_post) taisa UPDATE members tabulai salīdzinot memberID, bet tas īstio tā nenotiek, man tādas aizdomas ka caur foreach izmet visus memberID id numurus nevis attiecībās rintas id numuru ko vajag Updeitot.. beigu rezulātā, apdeits ir tikai pedejam ievietotam ierakstam members datubāzē.. netieku skaids.. jebkura palīdzība un padoms būtu lielisks!!! šeit būs koda gabals: Quote <?php error_reporting(E_ALL & ~E_NOTICE & ~E_USER_NOTICE); ob_start(); session_start(); //database credentials define('DBHOST','localhost'); define('DBUSER','root'); define('DBPASS','root'); define('DBNAME','dbname'); $db = new PDO('mysql:host='.DBHOST.';dbname='.DBNAME.';charset=utf8mb4', DBUSER, DBPASS); $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); ?> <section> <table> <thead> <tr> <th>ID</th> <th>Banner</th> </tr> </thead> <tbody> <?php try { $op_bn='<option disabled selected>Select Banner</option>'; $stmt = $db->prepare('SELECT * FROM banners'); $stmt->execute(); $result = $stmt->fetchAll(); $img_limk = '<img style="width:50px; height:50px;" src="../'.$row['bannerSlug'].'">'; foreach ($result as $row) { $op_bn.= "<option value='" . $row['bannerSlug'] . "'>" . $row['bannerTitle'] . "</option>"; } $stmt = $db->query('SELECT memberID, banner FROM members ORDER BY memberID DESC'); $stmt->execute(); $result = $stmt->fetchAll(); foreach($result as $row) { echo '<tr>'; echo '<td>'.$row['memberID'].'</td>'; ################################### NEDARBOJAS KOREKTI ############################## if(isset($_POST['bannerTitle'])){ $stmt = $db->prepare('UPDATE members SET banner=:banner WHERE memberID=:memberID'); $stmt->execute(array( ':banner' => $_POST['bannerTitle'], ':memberID' => $row['memberID'] )); $_SESSION['success'] = "Banner successfully added to member profile!"; header('Location: view_members.php'); exit; } echo '<td><form method="post" action=""><select name="bannerTitle" onchange="this.form.submit()">'.$op_bn.'</select></form</td>'; ################################### NEDARBOJAS KOREKTI ############################## echo '</tr>'; } } catch(PDOException $e) { echo $e->getMessage(); } ?> </tbody> </table> </section> datubāze: Quote CREATE TABLE `members` ( `memberID` int(11) NOT NULL AUTO_INCREMENT, `banner` varchar(255) DEFAULT NULL, PRIMARY KEY (`memberID`) ) ENGINE=InnoDB AUTO_INCREMENT=29 DEFAULT CHARSET=latin1; Quote CREATE TABLE `banners` ( `bannerID` int(11) unsigned NOT NULL AUTO_INCREMENT, `bannerTitle` varchar(255) DEFAULT NULL, `bannerSlug` varchar(255) DEFAULT NULL, PRIMARY KEY (`bannerID`) ) ENGINE=MyISAM AUTO_INCREMENT=67 DEFAULT CHARSET=utf8; Labots Maijs 23, 2020 - KT27 Link to comment Share on other sites More sharing options...
Mezavecis Maijs 24, 2020 Share Maijs 24, 2020 2020.05.23. , 19:57, KT27 teica: $stmt = $db->prepare('UPDATE members SET banner=:banner WHERE memberID=:memberID'); $stmt->execute(array( ':banner' => $_POST['bannerTitle'], ':memberID' => $row['memberID'] Derētu paskaidrot, kas šeit ir domāts un kas tas par array tiek padots uz SQL pieprasījumu. Link to comment Share on other sites More sharing options...
Anonīms Alkoholiķis Maijs 24, 2020 Share Maijs 24, 2020 Vai tiešām ir grūti apskatīties php dokumentācijā, kas ir PDO, ko tas ziemā ēd un kā to izmanto ar visiem piemēriem? Tā pat, kā uzdot php jautājumus phpistu forumā vai ja galva psšam nestrādā tad iet copypeistot kodu no stackoverflowa? Link to comment Share on other sites More sharing options...
Recommended Posts
Izveido kontu, vai pieraksties esošajā, lai komentētu
Jums ir jābūt šī foruma biedram, lai varētu komentēt tēmas
Izveidot jaunu kontu
Piereģistrējies un izveido jaunu kontu, tas būs viegli!
Reģistrēt jaunu kontuPierakstīties
Jums jau ir konts? Pierakstieties tajā šeit!
Pierakstīties tagad!