tunedin Posted November 21, 2012 Share Posted November 21, 2012 Hello all, I have been trying to figure this out for the past couple days and can't seem to find the correct solution. I have two fields: 1) Text field 2) Select Menu (which is pulling selections from db table categories) categories: 1)category_id 2)category_name What I want to do is display these fields twice (which I have set up), and be able to post this loop into the db table: videos: 1)video_id 2)link 3)category_id Not every post will have a video link associated with it, but some may have a maximum of 2. Here is the code as is for Post.php <?php for ($i= 1; $i<= $videofields; $i++) { ?> <p> <label for="link<?php echo $i; ?>">Video Link<?php echo $i; ?>: </label> <input value="<?php if ($_POST && $errors) { echo htmlentities($_POST["link{$i}"], ENT_COMPAT, 'UTF-8'); }?>" type="text" name="link<?php echo $i; ?>" id="link<?php echo $i; ?>" /> </p> <p> <label for="category_id<?php echo $i; ?>">Select Catgegory<?php echo $i; ?>:</label> <select name="category_id<?php echo $i; ?>" id="category_id<?php echo $i; ?>"> <option value="0">-- Select Category --</option> <?php foreach ($categories as $row) { echo "<option value='{$row['category_id']}'"; if ($errors && $_POST["category_id{$i}"] == $row['category_id']) { echo 'selected="selected"'; } echo ">{$row['category_name']}</option>"; } ?> </select> </p> And here is the definitons.php $data = array('link' => $_POST['link'], 'category_id' => $_POST['category_id']); $dbWrite->insert('videos', $data); Any help would be greatly appreciated! Quote Link to comment https://forums.phpfreaks.com/topic/270965-post-looping-text-and-select-field/ Share on other sites More sharing options...
Pikachu2000 Posted November 21, 2012 Share Posted November 21, 2012 Okay, so where are you stuck, exactly? What seems to be the major malfunction? Quote Link to comment https://forums.phpfreaks.com/topic/270965-post-looping-text-and-select-field/#findComment-1393995 Share on other sites More sharing options...
tunedin Posted November 21, 2012 Author Share Posted November 21, 2012 Okay, so where are you stuck, exactly? What seems to be the major malfunction? As it is right now it only posts the last selection, whether it has text inserted or not. Quote Link to comment https://forums.phpfreaks.com/topic/270965-post-looping-text-and-select-field/#findComment-1393997 Share on other sites More sharing options...
tunedin Posted November 21, 2012 Author Share Posted November 21, 2012 Actually sorry about that, as that is it doesn't post at all. I get undefined index for both link and category_id, and get integrity constraint for column link cannot be null. Quote Link to comment https://forums.phpfreaks.com/topic/270965-post-looping-text-and-select-field/#findComment-1393999 Share on other sites More sharing options...
tunedin Posted November 22, 2012 Author Share Posted November 22, 2012 What would be the correct way to insert two text field to the same table? I would like that if no information is typed in the link field or select a category that it doesn't create a new row. Any help would be appreciated! Quote Link to comment https://forums.phpfreaks.com/topic/270965-post-looping-text-and-select-field/#findComment-1394291 Share on other sites More sharing options...
deoiub Posted November 22, 2012 Share Posted November 22, 2012 (edited) <?php for ($i= 1; $i<= $videofields; $i++) { ?> ... <input value="<?php if ($_POST && $errors) { echo htmlentities($_POST["link{$i}"], ENT_COMPAT, 'UTF-8'); }?>" type="text" name="link<?php echo $i; ?>" id="link<?php echo $i; ?>" /> ... <select name="category_id<?php echo $i; ?>" id="category_id<?php echo $i; ?>"> ... And here is the definitons.php $data = array('link' => $_POST['link'], 'category_id' => $_POST['category_id']); $dbWrite->insert('videos', $data); Any help would be greatly appreciated! I've reduced your code above to where you are messing up. If you do a print_r($_POST) at the top of definitions.php script you will see your mistake. - D Edited November 22, 2012 by deoiub Quote Link to comment https://forums.phpfreaks.com/topic/270965-post-looping-text-and-select-field/#findComment-1394320 Share on other sites More sharing options...
tunedin Posted November 22, 2012 Author Share Posted November 22, 2012 Array ( [name] => Testing [description] => Testing [link1] => Test1 [category_id1] => FD [link2] => Test2 [category_id2] => FD [insert] => Insert Video) The name and description fields are two other fields on the page to fill out properlly. But those aren't in a loop. I get unidentified index for both link and category_id. So how can I go about's fixing this? Quote Link to comment https://forums.phpfreaks.com/topic/270965-post-looping-text-and-select-field/#findComment-1394497 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.