/php/restaurant_registration_exec.php

https://bitbucket.org/isanneh/diners-best · PHP · 437 lines · 349 code · 71 blank · 17 comment · 90 complexity · e000434c64d0a5df28a1c7852556095a MD5 · raw file

  1. <?php
  2. //Start session
  3. session_start();
  4. //Include database connection details
  5. //require_once('connect.php');
  6. include("connect.php");
  7. //Array to store validation errors
  8. $errmsg_arr = array();
  9. //Validation error flag
  10. $errflag = false;
  11. //Function to sanitize values received from the form. Prevents SQL injection
  12. function clean($str) {
  13. $str = @trim($str);
  14. if(get_magic_quotes_gpc()) {
  15. $str = stripslashes($str);
  16. }
  17. return mysql_real_escape_string($str);
  18. }
  19. //email format
  20. function isValidEmail($email){
  21. return eregi("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$", $email);
  22. }
  23. //name format
  24. function isValidName($name){
  25. return eregi ("^[a-zA-Z][a-zA-Z -]*$", $name);
  26. }
  27. //Sanitize the POST values
  28. $restaurant_name = clean($_POST['restaurant_name']);
  29. $restaurant_category = clean($_POST['restaurant_category']);
  30. $other_category = clean($_POST['other_category']);
  31. $phone = clean($_POST['phone']);
  32. $website = clean($_POST['website']);
  33. $street = clean($_POST['street']);
  34. $city = clean($_POST['city']);
  35. $state = clean($_POST['state']);
  36. $zipcode = clean($_POST['zipcode']);
  37. $email_address = clean($_POST['email_address']);
  38. $user_name = clean($_POST['user_name']);
  39. $password = clean($_POST['password']);
  40. $confirm_password = clean($_POST['confirm_password']);
  41. $description = clean($_POST['description']);
  42. $monday_open= clean($_POST['monday_open']);
  43. $monday_close= clean($_POST['monday_close']);
  44. $tuesday_open= clean($_POST['tuesday_open']);
  45. $tuesday_close= clean($_POST['tuesday_close']);
  46. $wednesday_open= clean($_POST['wednesday_open']);
  47. $wednesday_close= clean($_POST['wednesday_close']);
  48. $thursday_open= clean($_POST['thursday_open']);
  49. $thursday_close= clean($_POST['thursday_close']);
  50. $friday_open= clean($_POST['friday_open']);
  51. $friday_close= clean($_POST['friday_close']);
  52. $saturday_open= clean($_POST['saturday_open']);
  53. $saturday_close= clean($_POST['saturday_close']);
  54. $sunday_open= clean($_POST['sunday_open']);
  55. $sunday_close= clean($_POST['sunday_close']);
  56. //Input Validations
  57. if($restaurant_name == '') {
  58. $errmsg_arr[] = 'Restaurant name missing';
  59. $errflag = true;
  60. }
  61. if($restaurant_category == 'choose_restaurant' && $other_category == '' ) {
  62. $errmsg_arr[] = 'Category missing';
  63. $errflag = true;
  64. }
  65. else
  66. {
  67. if($restaurant_category == 'choose_restaurant') {
  68. $chosen_category=$other_category;
  69. }
  70. else
  71. {
  72. if($other_category == '' ) {
  73. $chosen_category=$restaurant_category;
  74. }
  75. }
  76. }
  77. if($phone == '') {
  78. $errmsg_arr[] = 'Phone missing';
  79. $errflag = true;
  80. }
  81. if($street == '') {
  82. $errmsg_arr[] = 'Street missing';
  83. $errflag = true;
  84. }
  85. if($city == '') {
  86. $errmsg_arr[] = 'City missing';
  87. $errflag = true;
  88. }
  89. if($zipcode == '') {
  90. $errmsg_arr[] = 'Zipcode missing';
  91. $errflag = true;
  92. }
  93. if($website == '') {
  94. $$website='N/A';
  95. }
  96. if (isset($_POST['closed_monday']))
  97. {
  98. $monday_open='0';
  99. $monday_close='0';
  100. }
  101. else
  102. {
  103. if($monday_open == 'time') {
  104. $errmsg_arr[] = 'Monday open time missing. Check "Resturant is closed" if your restuarant
  105. is closed on Mondays';
  106. $errflag = true;
  107. }
  108. if($monday_close == 'time') {
  109. $errmsg_arr[] = 'Monday close time missing. Check "Resturant is closed" if your restuarant
  110. is closed on Mondays';
  111. $errflag = true;
  112. }
  113. }
  114. if (isset($_POST['closed_tuesday']))
  115. {
  116. $tuesday_open='0';
  117. $tuesday_close='0';
  118. }
  119. else
  120. {
  121. if($tuesday_open == 'time') {
  122. $errmsg_arr[] = 'Tuesday open time missing. Check "Resturant is closed" if your restuarant
  123. is closed on Tuesdays';
  124. $errflag = true;
  125. }
  126. if($tuesday_close == 'time') {
  127. $errmsg_arr[] = 'Tuesday close time missing. Check "Resturant is closed" if your restuarant
  128. is closed on Tuesdays';
  129. $errflag = true;
  130. }
  131. }
  132. if (isset($_POST['closed_wednesday']))
  133. {
  134. $wednesday_open='0';
  135. $wednesday_close='0';
  136. }
  137. else
  138. {
  139. if($wednesday_open == 'time') {
  140. $errmsg_arr[] = 'Wednesday open time missing. Check "Resturant is closed" if your restuarant
  141. is closed on Wednesdays';
  142. $errflag = true;
  143. }
  144. if($wednesday_close == 'time') {
  145. $errmsg_arr[] = 'Wednesday close time missing. Check "Resturant is closed" if your restuarant
  146. is closed on Wednesdays';
  147. $errflag = true;
  148. }
  149. }
  150. if (isset($_POST['closed_thursday']))
  151. {
  152. $thursday_open='0';
  153. $thursday_close='0';
  154. }
  155. else
  156. {
  157. if($thursday_open == 'time') {
  158. $errmsg_arr[] = 'Thursday open time missing. Check "Resturant is closed" if your restuarant
  159. is closed on Thursdays';
  160. $errflag = true;
  161. }
  162. if($thursday_close == 'time') {
  163. $errmsg_arr[] = 'Thursday close time missing. Check "Resturant is closed" if your restuarant
  164. is closed on Thursdays';
  165. $errflag = true;
  166. }
  167. }
  168. if (isset($_POST['closed_friday']))
  169. {
  170. $friday_open='0';
  171. $friday_close='0';
  172. }
  173. else
  174. {
  175. if($friday_open == 'time') {
  176. $errmsg_arr[] = 'Friday open time missing. Check "Resturant is closed" if your restuarant
  177. is closed on Fridays';
  178. $errflag = true;
  179. }
  180. if($friday_close == 'time') {
  181. $errmsg_arr[] = 'Friday close time missing. Check "Resturant is closed" if your restuarant
  182. is closed on Fridays';
  183. $errflag = true;
  184. }
  185. }
  186. if (isset($_POST['closed_saturday']))
  187. {
  188. $saturday_open='0';
  189. $saturday_close='0';
  190. }
  191. else
  192. {
  193. if($saturday_open == 'time') {
  194. $errmsg_arr[] = 'Saturday open time missing. Check "Resturant is closed" if your restuarant
  195. is closed on Saturdays';
  196. $errflag = true;
  197. }
  198. if($saturday_close == 'time') {
  199. $errmsg_arr[] = 'Saturday close time missing. Check "Resturant is closed" if your restuarant
  200. is closed on Saturdays';
  201. $errflag = true;
  202. }
  203. }
  204. if (isset($_POST['closed_sunday']))
  205. {
  206. $sunday_open='0';
  207. $sunday_close='0';
  208. }
  209. else
  210. {
  211. if($sunday_open == 'time') {
  212. $errmsg_arr[] = 'Sunday open time missing. Check "Resturant is closed" if your restuarant
  213. is closed on Sundays';
  214. $errflag = true;
  215. }
  216. if($sunday_close == 'time') {
  217. $errmsg_arr[] = 'Sunday close time missing. Check "Resturant is closed" if your restuarant
  218. is closed on Sundays';
  219. $errflag = true;
  220. }
  221. }
  222. if($email_address == '') {
  223. $errmsg_arr[] = 'Email missing';
  224. $errflag = true;
  225. }
  226. else
  227. {
  228. if(isValidEmail($email_address) ==TRUE)
  229. {
  230. }
  231. else
  232. {
  233. $errmsg_arr[] = 'Email address is not valid';
  234. $errflag = true;
  235. }
  236. }
  237. if($user_name == '') {
  238. $errmsg_arr[] = 'Login ID missing';
  239. $errflag = true;
  240. }
  241. if($password == '') {
  242. $errmsg_arr[] = 'Password missing';
  243. $errflag = true;
  244. }
  245. if($confirm_password == '') {
  246. $errmsg_arr[] = 'Confirm password missing';
  247. $errflag = true;
  248. }
  249. if( strcmp($password, $confirm_password) != 0 ) {
  250. $errmsg_arr[] = 'Passwords do not match';
  251. $errflag = true;
  252. }
  253. //Check for duplicate restaurant login ID
  254. if($user_name != '') {
  255. $qry = "SELECT * FROM restaurants WHERE User_Name='$user_name'";
  256. $result = mysql_query($qry);
  257. if($result) {
  258. if(mysql_num_rows($result) > 0) {
  259. $errmsg_arr[] = 'Login ID already in use';
  260. $errflag = true;
  261. }
  262. @mysql_free_result($result);
  263. }
  264. else {
  265. die("Query failed");
  266. }
  267. }
  268. //Check for duplicate user login ID
  269. if($user_name != '') {
  270. $qry = "SELECT * FROM users WHERE User_Name='$user_name'";
  271. $result = mysql_query($qry);
  272. if($result) {
  273. if(mysql_num_rows($result) > 0) {
  274. $errmsg_arr[] = 'Login ID already in use';
  275. $errflag = true;
  276. }
  277. @mysql_free_result($result);
  278. }
  279. else {
  280. die("Query failed");
  281. }
  282. }
  283. //Check for duplicate restaurant email
  284. if($email_address != '') {
  285. $qry = "SELECT * FROM restaurants WHERE Email_Address='$email_address'";
  286. $result = mysql_query($qry);
  287. if($result) {
  288. if(mysql_num_rows($result) > 0) {
  289. $errmsg_arr[] = 'Email Address already in use';
  290. $errflag = true;
  291. }
  292. @mysql_free_result($result);
  293. }
  294. else {
  295. die("Query failed");
  296. }
  297. }
  298. //Check for duplicate user email
  299. if($email_address != '') {
  300. $qry = "SELECT * FROM users WHERE Email_Address='$email_address'";
  301. $result = mysql_query($qry);
  302. if($result) {
  303. if(mysql_num_rows($result) > 0) {
  304. $errmsg_arr[] = 'Email Address already in use';
  305. $errflag = true;
  306. }
  307. @mysql_free_result($result);
  308. }
  309. else {
  310. die("Query failed");
  311. }
  312. }
  313. //If there are input validations, redirect back to the registration form
  314. if($errflag) {
  315. $_SESSION['ERRMSG_ARR'] = $errmsg_arr;
  316. session_write_close();
  317. header("location: restaurant_registration.php");
  318. exit();
  319. }
  320. $profile_url = $user_name;
  321. $profile_url .= ".php";
  322. //Create INSERT query
  323. $qry = "INSERT INTO restaurants(Restaurant_Name, Category, Email_Address, User_Name, Password, Profile_Url) VALUES('$restaurant_name', '$chosen_category',
  324. '$email_address', '$user_name','".md5($_POST['password'])."', '$profile_url')";
  325. $result = @mysql_query($qry);
  326. //Check whether the query was successful or not
  327. if($result) {
  328. $old = 'restaurant.txt';
  329. $new = "new.txt";
  330. copy($old, $new) or die("Unable to copy $old to $new.");
  331. $new1 = $user_name;
  332. $new1 .= ".php";
  333. rename($new, $new1) or die("Unable to rename $new to $new1.");
  334. $_SESSION['SESS_USER_NAME'] = $user_name;
  335. $_SESSION['SESS_EMAIL_ADDRESS'] = $email_address;
  336. $_SESSION['SESS_PHONE']=$phone;
  337. $_SESSION['SESS_WEBSITE']=$website;
  338. $_SESSION['SESS_STREET']=$street;
  339. $_SESSION['SESS_CITY']=$city;
  340. $_SESSION['SESS_STATE']=$state;
  341. $_SESSION['SESS_ZIPCODE']=$zipcode;
  342. $country= 'United States';
  343. $_SESSION['SESS_COUNTRY']=$country;
  344. $_SESSION['SESS_DESCRIPTION']=$description;
  345. $_SESSION['SESS_MONDAY_OPEN']=$monday_open;
  346. $_SESSION['SESS_MONDAY_CLOSE']=$monday_close;
  347. $_SESSION['SESS_TUESDAY_OPEN']=$tuesday_open;
  348. $_SESSION['SESS_TUESDAY_CLOSE']=$tuesday_close;
  349. $_SESSION['SESS_WEDNESDAY_OPEN']=$wednesday_open;
  350. $_SESSION['SESS_WEDNESDAY_CLOSE']=$wednesday_close;
  351. $_SESSION['SESS_THURSDAY_OPEN']=$thursday_open;
  352. $_SESSION['SESS_THURSDAY_CLOSE']=$thursday_close;
  353. $_SESSION['SESS_FRIDAY_OPEN']=$friday_open;
  354. $_SESSION['SESS_FRIDAY_CLOSE']=$friday_close;
  355. $_SESSION['SESS_SATURDAY_OPEN']=$saturday_open;
  356. $_SESSION['SESS_SATURDAY_CLOSE']=$saturday_close;
  357. $_SESSION['SESS_SUNDAY_OPEN']=$sunday_open;
  358. $_SESSION['SESS_SUNDAY_CLOSE']=$sunday_close;
  359. header("location: restaurant_registration_success.php");
  360. exit();
  361. }
  362. else
  363. {
  364. die("Query failed");
  365. }
  366. ?>