techker Posted December 4, 2008 Share Posted December 4, 2008 hey guys im trying to do a select pic to insert the name in a database. the insert works but it does not insert the pic name only an id.. i can't seem to figure it out.. <? $dbh = mysql_connect("localhost","user","pass") or die("There was a problem with the database connection."); $dbs = mysql_select_db("db", $dbh) or die("There was a problem selecting the categories."); $type=$_POST['type']; $sql = "SELECT * FROM `gymball` WHERE `type` = '$type' "; $fileLIST=mysql_query($sql);?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>GymGraph</title> </head> <body> <p align="center"><u>Sélectionner UNE photo</u></p> <table width="346" border="0" align="center" cellpadding="0" cellspacing="0"> <tr><? while($row = mysql_fetch_array($fileLIST)) { ?> <td width="173"><?php echo '<a href="/Gymgraph/Gymgraph/gymball/'. $row['name'] .'" target="_blank"> <img src="/Gymgraph/Gymgraph/gymball/'. $row['name'] .'" border="0" alt="" width=115/> </a> <br />'; ?></td> <td width="173"><label> <input type="checkbox" name="select" id="pic" value='<? $row['name'] ?>'/> Selection de photo</label></td> </tr> <? } ?> </table> <p> <p> <label> <div align="center"> <select name="location" id="location"> <option value="pic1">1</option> <option value="pic2">2</option> <option value="pic3">3</option> <option value="pic4">4</option> <option value="pic5">5</option> <option value="pic6">6</option> <option value="pic7">7</option> <option value="pic8">8</option> </select> Emplacement de la photo </div> </label> </p> <label> <div align="center"> <input type="submit" name="submit" id="submit" value="Submit" /> </div> </label> <div align="center"> Envoyer la sélection </div> </p> </form> </body> </html> and this is the insert pic <?php $pic=$_POST['pic']; $location=$_POST['location']; mysql_connect("localhost", "user", "t") or die(mysql_error()) ; mysql_select_db("techker_gymgraphpics") or die(mysql_error()) ; //Writes the information to the database mysql_query("INSERT INTO $location (name) ". "VALUES ('$pic')"); //Tells you if its all ok $id= mysql_insert_id(); echo "<p>This file has the following Database ID: <b>$id</b>"; echo "You'll be redirected to Home Page after (4) Seconds"; echo "<meta http-equiv=Refresh content=4;url=gymball_select.php>"; ?> Link to comment https://forums.phpfreaks.com/topic/135496-form-insert-help/ Share on other sites More sharing options...
revraz Posted December 4, 2008 Share Posted December 4, 2008 Use mysql_error() after your query to check for errors Are you saying this isn't working? mysql_query("INSERT INTO $location (name) ". "VALUES ('$pic')"); if so, echo $location and $pic to make sure the are what they should be. Link to comment https://forums.phpfreaks.com/topic/135496-form-insert-help/#findComment-705888 Share on other sites More sharing options...
MadTechie Posted December 4, 2008 Share Posted December 4, 2008 first off i ma not sure if you mean radio instead of check boxes but in anycase you have 2 problems 1. you requesting $_POST['pic']; which is the ID not the name.. the name is "select" 2. it will only take the last ticked value.. so to fix this.. change <input type="checkbox" name="select" id="pic" value='<? $row['name'] ?>'/> to <input type="checkbox" name="pic[]" id="pic" value='<?php $row['name'] ?>'/> and then change $pic=$_POST['pic']; to $pic=$_POST['pic'][0]; //assuming you only tick 1 box Link to comment https://forums.phpfreaks.com/topic/135496-form-insert-help/#findComment-705889 Share on other sites More sharing options...
gevans Posted December 4, 2008 Share Posted December 4, 2008 From what I can see, your html form isn't started you have the closing tag </form> but no opening tag - <form> Link to comment https://forums.phpfreaks.com/topic/135496-form-insert-help/#findComment-705891 Share on other sites More sharing options...
techker Posted December 4, 2008 Author Share Posted December 4, 2008 first off i ma not sure if you mean radio instead of check boxes but in anycase you have 2 problems 1. you requesting $_POST['pic']; which is the ID not the name.. the name is "select" 2. it will only take the last ticked value.. so to fix this.. change <input type="checkbox" name="select" id="pic" value='<? $row['name'] ?>'/> to <input type="checkbox" name="pic[]" id="pic" value='<?php $row['name'] ?>'/> and then change $pic=$_POST['pic']; to $pic=$_POST['pic'][0]; //assuming you only tick 1 box so what would be the value?i need the named of the image that is ticked. whats the [0] added? Link to comment https://forums.phpfreaks.com/topic/135496-form-insert-help/#findComment-706272 Share on other sites More sharing options...
techker Posted December 4, 2008 Author Share Posted December 4, 2008 ok i setled the prob by putting a hidden filed that echo the name of the pic. so in my add pic i just added the post for that field..and voila!thx.. but im still wondering why it does not work.. Link to comment https://forums.phpfreaks.com/topic/135496-form-insert-help/#findComment-706307 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.