Jump to content
Killersites Community


Popular Content

Showing content with the highest reputation since 03/26/2018 in Posts

  1. 4 points
    I also tried this at first, and it was almost the same experience, most people don't know what they want, so I mainly use templates, show them, and change things up for them, its troubling when they yes too everything and trying to start from scratch, so by having a "menu" that I can serve to them on a silver platter made the whole processes much simpler. By that I mean, here are a few Menu - Home Page - Color Pallet Combinations, here are the most popular trending fonts, used in 2018 for clear visuals, and so on. Most people don't pay attention to small details at first but when its all put together, boom Although I have stopped offering this service, its something that I do believe worth doing, get to learn ALLOT just by trying to solve problems client have. keep it up! and don't give up
  2. 3 points
    Hello guys,you can call me Dammy,am new here.Its good to have a place like this to call home.😎😎😎😎 Nerds up! Hope am welcome!
  3. 2 points
    Hi all, Kakie here! I have some old programming background in languages like ( Pascal, Basic, VB) which is really old and I never used it to do some thing in the reall world, I watched some of Stefan's vids on you tube, I liked his teaching methodes, and hey I joined and I like the course so far :), I that hope I will be able to make some money with it
  4. 2 points
    Good news on the Net Neutrality Issue, the Senate has voted to repeal Pi's decision. But it is not over yet, although the Senate voted to repeal it, the House of Representatives has not yet and the timer to do so is ticking down. For those of you who really care, pop off another letter or phone call to your representative and let them know a vote must take place and what you expect that vote to be, they are supposed to represent us and not big business. As for the Senate... the vote was 52 to 47, we won the vote, but only be 5 votes which I find to be a sorry margin indeed. But hey, horse shoes and hand grenades...
  5. 1 point
    Hello All, It would be great to see who's kicking around the forums and get some introductions going. Seems like a good way to get things rolling Starting with myself... I'm Tyler. I'm in Vancouver BC Canada and I'm currently working as a freelance web designer and marketer, mostly with local businesses. Everything I have learned so far has been on a need to nerd basis (as Stef would say). I still have a lot to learn, but I get by ok. On any given day I might be working on web development, design, seo, ppc campaigns, content marketing, or anything really. I love it all, but have considered whether or not I should be more narrowly focused. We'll see! I also do some affiliate marketing and have built and flipped a few sites of my own. I stumbled onto Stef's youtube a few months ago and became an instant fan, some of his vlogs on business, contracts, and clients have been very helpful. So when he announced that he was re-launching the forum, I was like: I have a feeling this will be a great community. With that said, who else is out there? Introduce yourself...
  6. 1 point
    Check out our new Interactive Web Developer course (created in 2016) that covers this, and much more: shop.killervideostore.com This is a revised version of my previous tutorial (http://www.killersites.com/community/index.php?/topic/1969-basic-php-system-vieweditdeleteadd-records/) which uses MySQLi rather than regular MySQL to connect to the database. MySQLi, often called MySQL Improved, has several advantages over regular MySQL, including support for prepared statements (which helps prevent SQL injection, a common security issue) and object-oriented code. I've also provided a modified view.php file that shows one way to do basic pagination. I have also recorded a 8 part video tutorial (a bit over an an hour worth of video) showing how to build this system and explaining it as I go. It's available in the KillerSites University (http://www.webmentor.org - subscription required) under PHP > PHP CRUD Videos. --- (Anyone with PHP knowledge is welcome to comment on the code. If there are issues I haven't noticed, please let me know. Do realize that it is intended for beginners, so I didn't want to do anything too advanced that might lead to confusion. Yes, I realize I could use OOP, or could separate some of these out into methods, etc. etc.) OK... Here's some code for you to play with. It's a basic system that allows you to: -- view existing records -- edit existing records -- delete existing records -- add new records Online demo: http://www.falkencreative.com/forum/records-mysqli/view.php Basically, just imagine that you are in charge of a sports team, and you want to keep a list of all your player's contact information. The code I've created could be a starting point for that (it only includes fields for their first name/last name, but could obviously could be expanded to use more fields). This is just a basic starting point for projects that require view/edit/delete functionality. I know it may seem a lot to understand at first, but read all the comments in the code -- I try to explain what I am doing step by step. I'm also happy to help with any questions (please post questions in a new topic.) How to create a system that allows a user to add/edit/remove data in a database seems to be a commonly asked topic, so I may adapt this into an actual tutorial at some point in the future. DATABASE: -- You'll need to create a database (I named mine 'records' but it can be changed) using PHPMyAdmin -- Save the included sql file on your desktop as a .txt file -- Once you've created the database, make sure the database is selected, then click the "import" tab -- Select the .txt file on your desktop, and import it into your database. PHPMyAdmin will create all of the necessary tables/import some test data for you to play with SQL file: -- -- Table structure for table `players` -- CREATE TABLE `players` ( `id` int(11) NOT NULL auto_increment, `firstname` varchar(32) NOT NULL, `lastname` varchar(32) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=5 ; -- -- Dumping data for table `players` -- INSERT INTO `players` VALUES(1, 'Bob', 'Baker'); INSERT INTO `players` VALUES(2, 'Tim', 'Thomas'); INSERT INTO `players` VALUES(3, 'Rachel', 'Roberts'); INSERT INTO `players` VALUES(4, 'Sam', 'Smith'); Save these php files all in the same folder in a place where you can run them using your server (I'm assuming you are using something like WAMP for the server? I'm not sure if Dreamweaver includes something like that by default.) connect-db.php <?php // server info $server = 'localhost'; $user = 'root'; $pass = 'root'; $db = 'records2'; // connect to the database $mysqli = new mysqli($server, $user, $pass, $db); // show errors (remove this line if on a live site) mysqli_report(MYSQLI_REPORT_ERROR); ?> view.php (non-paginated -- will just display one long list of members) <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <title>View Records</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> </head> <body> <h1>View Records</h1> <p><b>View All</b> | <a href="view-paginated.php">View Paginated</a></p> <?php // connect to the database include('connect-db.php'); // get the records from the database if ($result = $mysqli->query("SELECT * FROM players ORDER BY id")) { // display records if there are records to display if ($result->num_rows > 0) { // display records in a table echo "<table border='1' cellpadding='10'>"; // set table headers echo "<tr><th>ID</th><th>First Name</th><th>Last Name</th><th></th><th></th></tr>"; while ($row = $result->fetch_object()) { // set up a row for each record echo "<tr>"; echo "<td>" . $row->id . "</td>"; echo "<td>" . $row->firstname . "</td>"; echo "<td>" . $row->lastname . "</td>"; echo "<td><a href='records.php?id=" . $row->id . "'>Edit</a></td>"; echo "<td><a href='delete.php?id=" . $row->id . "'>Delete</a></td>"; echo "</tr>"; } echo "</table>"; } // if there are no records in the database, display an alert message else { echo "No results to display!"; } } // show an error if there is an issue with the database query else { echo "Error: " . $mysqli->error; } // close database connection $mysqli->close(); ?> <a href="records.php">Add New Record</a> </body> </html> view-paginated.php <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <title>View Records</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> </head> <body> <h1>View Records</h1> <?php // connect to the database include('connect-db.php'); // number of results to show per page $per_page = 3; // figure out the total pages in the database if ($result = $mysqli->query("SELECT * FROM players ORDER BY id")) { if ($result->num_rows != 0) { $total_results = $result->num_rows; // ceil() returns the next highest integer value by rounding up value if necessary $total_pages = ceil($total_results / $per_page); // check if the 'page' variable is set in the URL (ex: view-paginated.php?page=1) if (isset($_GET['page']) && is_numeric($_GET['page'])) { $show_page = $_GET['page']; // make sure the $show_page value is valid if ($show_page > 0 && $show_page <= $total_pages) { $start = ($show_page -1) * $per_page; $end = $start + $per_page; } else { // error - show first set of results $start = 0; $end = $per_page; } } else { // if page isn't set, show first set of results $start = 0; $end = $per_page; } // display pagination echo "<p><a href='view.php'>View All</a> | <b>View Page:</b> "; for ($i = 1; $i <= $total_pages; $i++) { if (isset($_GET['page']) && $_GET['page'] == $i) { echo $i . " "; } else { echo "<a href='view-paginated.php?page=$i'>$i</a> "; } } echo "</p>"; // display data in table echo "<table border='1' cellpadding='10'>"; echo "<tr> <th>ID</th> <th>First Name</th> <th>Last Name</th> <th></th> <th></th></tr>"; // loop through results of database query, displaying them in the table for ($i = $start; $i < $end; $i++) { // make sure that PHP doesn't try to show results that don't exist if ($i == $total_results) { break; } // find specific row $result->data_seek($i); $row = $result->fetch_row(); // echo out the contents of each row into a table echo "<tr>"; echo '<td>' . $row[0] . '</td>'; echo '<td>' . $row[1] . '</td>'; echo '<td>' . $row[2] . '</td>'; echo '<td><a href="records.php?id=' . $row[0] . '">Edit</a></td>'; echo '<td><a href="delete.php?id=' . $row[0] . '">Delete</a></td>'; echo "</tr>"; } // close table> echo "</table>"; } else { echo "No results to display!"; } } // error with the query else { echo "Error: " . $mysqli->error; } // close database connection $mysqli->close(); ?> <a href="records.php">Add New Record</a> </body> </html> </html> records.php (create a new record/edit existing records) <?php /* Allows the user to both create new records and edit existing records */ // connect to the database include("connect-db.php"); // creates the new/edit record form // since this form is used multiple times in this file, I have made it a function that is easily reusable function renderForm($first = '', $last ='', $error = '', $id = '') { ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <title> <?php if ($id != '') { echo "Edit Record"; } else { echo "New Record"; } ?> </title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> </head> <body> <h1><?php if ($id != '') { echo "Edit Record"; } else { echo "New Record"; } ?></h1> <?php if ($error != '') { echo "<div style='padding:4px; border:1px solid red; color:red'>" . $error . "</div>"; } ?> <form action="" method="post"> <div> <?php if ($id != '') { ?> <input type="hidden" name="id" value="<?php echo $id; ?>" /> <p>ID: <?php echo $id; ?></p> <?php } ?> <strong>First Name: *</strong> <input type="text" name="firstname" value="<?php echo $first; ?>"/><br/> <strong>Last Name: *</strong> <input type="text" name="lastname" value="<?php echo $last; ?>"/> <p>* required</p> <input type="submit" name="submit" value="Submit" /> </div> </form> </body> </html> <?php } /* EDIT RECORD */ // if the 'id' variable is set in the URL, we know that we need to edit a record if (isset($_GET['id'])) { // if the form's submit button is clicked, we need to process the form if (isset($_POST['submit'])) { // make sure the 'id' in the URL is valid if (is_numeric($_POST['id'])) { // get variables from the URL/form $id = $_POST['id']; $firstname = htmlentities($_POST['firstname'], ENT_QUOTES); $lastname = htmlentities($_POST['lastname'], ENT_QUOTES); // check that firstname and lastname are both not empty if ($firstname == '' || $lastname == '') { // if they are empty, show an error message and display the form $error = 'ERROR: Please fill in all required fields!'; renderForm($firstname, $lastname, $error, $id); } else { // if everything is fine, update the record in the database if ($stmt = $mysqli->prepare("UPDATE players SET firstname = ?, lastname = ? WHERE id=?")) { $stmt->bind_param("ssi", $firstname, $lastname, $id); $stmt->execute(); $stmt->close(); } // show an error message if the query has an error else { echo "ERROR: could not prepare SQL statement."; } // redirect the user once the form is updated header("Location: view.php"); } } // if the 'id' variable is not valid, show an error message else { echo "Error!"; } } // if the form hasn't been submitted yet, get the info from the database and show the form else { // make sure the 'id' value is valid if (is_numeric($_GET['id']) && $_GET['id'] > 0) { // get 'id' from URL $id = $_GET['id']; // get the recod from the database if($stmt = $mysqli->prepare("SELECT * FROM players WHERE id=?")) { $stmt->bind_param("i", $id); $stmt->execute(); $stmt->bind_result($id, $firstname, $lastname); $stmt->fetch(); // show the form renderForm($firstname, $lastname, NULL, $id); $stmt->close(); } // show an error if the query has an error else { echo "Error: could not prepare SQL statement"; } } // if the 'id' value is not valid, redirect the user back to the view.php page else { header("Location: view.php"); } } } /* NEW RECORD */ // if the 'id' variable is not set in the URL, we must be creating a new record else { // if the form's submit button is clicked, we need to process the form if (isset($_POST['submit'])) { // get the form data $firstname = htmlentities($_POST['firstname'], ENT_QUOTES); $lastname = htmlentities($_POST['lastname'], ENT_QUOTES); // check that firstname and lastname are both not empty if ($firstname == '' || $lastname == '') { // if they are empty, show an error message and display the form $error = 'ERROR: Please fill in all required fields!'; renderForm($firstname, $lastname, $error); } else { // insert the new record into the database if ($stmt = $mysqli->prepare("INSERT players (firstname, lastname) VALUES (?, ?)")) { $stmt->bind_param("ss", $firstname, $lastname); $stmt->execute(); $stmt->close(); } // show an error if the query has an error else { echo "ERROR: Could not prepare SQL statement."; } // redirec the user header("Location: view.php"); } } // if the form hasn't been submitted yet, show the form else { renderForm(); } } // close the mysqli connection $mysqli->close(); ?> delete.php <?php // connect to the database include('connect-db.php'); // confirm that the 'id' variable has been set if (isset($_GET['id']) && is_numeric($_GET['id'])) { // get the 'id' variable from the URL $id = $_GET['id']; // delete record from database if ($stmt = $mysqli->prepare("DELETE FROM players WHERE id = ? LIMIT 1")) { $stmt->bind_param("i",$id); $stmt->execute(); $stmt->close(); } else { echo "ERROR: could not prepare SQL statement."; } $mysqli->close(); // redirect user after delete is successful header("Location: view.php"); } else // if the 'id' variable isn't set, redirect the user { header("Location: view.php"); } ?>
  7. 1 point
    Hi everyone! I am conducting a research about styles of typing. I have asked some great programmers and experienced ones like Larry Wall (creator of Perl), Robert C. Martin aka Uncle Bob, college professors about styles of typing. I saw in one video (https://www.youtube.com/watch?v=S5S9LIT-hdc) Linus Torvalds touch typing but with his own style. I do myself touch type but with my style, and I have nice speed and everything. Speed and accuracy is something that you build only by practice, practice and more practice. But one question concerns me, should we type in some particular style so we dont get Carpal Tunnel Syndrome, repetitive strain injury or any other health problem ? And thats when I decided to conduct research, to get answers from people who coded all their life and from people who are experienced. I will post my research on my website when I launch it. I would like if you guys want to be part of my research, as this can only benefit and help others, so we can improve ourself and also take care of ourselves. So here it goes: Do you touch type? If you touch type, do you do with your own style or you use 10 finger system? Have you had any problems with your body(hands mostly or neck because of hunt and peck) while typing? Thanks, Your input will mean to me and others!
  8. 1 point
    Most internet network cables are installed along the coasts. With rising sea levels, the placement of these cables needs to be moved if the internet is going to survive. https://cheddar.com/videos/the-internet-is-in-danger-of-drowning/
  9. 1 point
    Hi Carly and Toni, Welcome to the forum! Stef
  10. 1 point
    That is good to hear. I am glad you found it useful. Cheers!
  11. 1 point
    Hey hey, welcome to the forum. Best of luck
  12. 1 point
  13. 1 point
    Hello everyone. I have been doing html for a year now, I am going through the JavaScript Beginners course here. I am back in school to get my bachelors degree and am a junior there. I am taking the C# class and working on my final project. I couldn't create an App on my own with out having to research everything online, but I do understand programming a lot better now. I am taking this course online at my school and the book used is very confusing. I like the videos here and the explanations given. I hope to get a solid understanding of the basics of programming and work on Web Dev on the side. I currently work for a large telecom company and install, configure, and maintain phone systems for small companies. Digital and IP PBX systems. I have been in the telecom industry since 1998 and would like to expand my knowledge into the coding world. Thanks!
  14. 1 point
    You could start with PHP for backend or Node.JS, which is Javascript used on the server. The options are many including Ruby, Python and Java.
  15. 1 point
    StudioWeb (htmlnirvana) is for the foundation training and it is interactive with quizzing. The projects is just the icing on the cake ... if you will. It is just takes you to the next step in certain areas. The biggest value is in the interactive training.
  16. 1 point
    So, is Facebook advertising worth the money? More and more evidence is saying nope! If you are thinking of advertising on Facebook, you may want to check out this amazing video:
  17. 1 point
    I just deleted everything and started from scratch and it worked. Thanks!
  18. 1 point
    I've built sites using Divi and other such builders, and it is possible to customize sites built on those platforms. Depending on your needs, you'll likely find that you will need to make styling or layout adjustments. No site builder is perfect and you likely won't find something that matches 100% with what you want to do. Most site builders have specific APIs or expectations for how changes are made. At least in my experience, even if you use a site builder plugin, it's rare that you won't have to code anything at all. The downside with site builders is that they often try to do too much -- they try to be the solution to every possible problem, and it results in sites that are over-engineered and slow to download. You'll potentially wind up with a site that only uses 20% of the theme builder's functionality, but 100% of all the downsides. I generally prefer to custom build my sites, using the Advanced Custom Fields plugin to provide the editing interface for the various content blocks that make up the site. In general, you won't be able to export out the code that these Wordpress-based site builders generate -- they rely on Wordpress and Wordpress' editing interface in order to work. I suppose you could manually download each page as HTML and piece the file structure together, but that's a significant amount of work and you'll lose the ability to easily edit the content or change functionality.
  19. 1 point
    Yes got resolved in subsequent videos. Thanks
  20. 1 point
    Thank you so much for responding, the book, youtube vids and everything .. you are the man
  21. 1 point
    OH!!!!! I got it. Down in the lower right-hand side of the display, it said "plain text". You have to change it to HTML. Dar!!!!!!! Works great now! -Mike
  22. 1 point
    I just watched the video 'Is Freelancing just Trading one Boss for Many?' I agree with the strategy that "Its far better to have 100 small clients rather than a couple of big ones". I like to kickstart some discussion here to discuss about how should we go about it implement this strategy to build a stable freelance business. My first thought on this topic is that we should target small business that require to change their website regularly(e.g. restaurant, florist, mobile shop).
  23. 1 point
    Although I consider Pi a Trump stooge for his actions destroying Net Neutrality, nice to see he is none simply a "Yes Man." He is at least picking the right side of this fight in my opinion. Of course this does not Verizon in any way like the Net Neutrality decision. FCC Head and Wireless Lobby Oppose U.S. Bid to Build a 5G Network https://www.bloomberg.com/news/articles/2018-01-29/u-s-is-said-to-consider-building-5g-network-amid-china-concerns
  24. 1 point
    I modified LSW's list for Web Programmer, since his list is outdated: Core Knowledge: HTML (HTML 4.2 and HTML5) JavaScript (note: much more than a scripting language) CSS (CSS2 and CSS3) PHP5 WordPress SQL -- MySQL is fine basic relational database knowledge Good to Know: Photoshop jQuery JSON Java C# on .Net framework Microsoft Word, PowerPoint, EXCEL, Access, Publisher Can be helpful on your resume: Ruby on Rails Python Dreamweaver (hand coding is easier and creates better code, though) Facebook -- creating Fan pages Mobile web site creation Creating Apps Using Social Media and tying into web and mobile sites Basic internet marketing (branding, driving traffic, engaging customers) Creating Q-codes and using on websites SMS -- text messaging service set-up (Twilio)and phone/web/mobile use Creating and using RSS feeds SharePoint or GoogleDocs -- way to share documentations with others Not Sure, I Think Outdated: AJAX Perl (clunky language) Don't bother: ASP (Active Server Pages) XML, XHTML -- replaced by HTML5 Another Flash related, such as Action Script and Flash Builder VBScript -- even IE now uses JavaScript Drupal -- Use WordPress instead Eh! Visual Basic -- If learning either C# on .NET or Java is too hard, then learn Visual Basic on .NET as a stepping stone Excellent English speaking, reading, and writing skills are golden. If you know a foreign language, that can help land a web developer job. People skills (plays nice with others) and soft skills (attention to detail, for example) are also important.
  25. 1 point
    The following points were written originally to pull my thoughts together for a accessibility briefing on the status of web sites belonging to the state of Alaska, I thought I would add them here for you to read as well. As usual they are mirrored under LSW: Notes on the alt attribute -------------------------------------------------------------------------------- The issue here is as follows: Alt stands for Alternative text. This means a text alternative to the information held or represented by an image. The popular misconception is that you need describe the image or say what the image is. This is not quite the point. The text is meant as an alternative to inform the user of any info they may be missing. If the image has no informative value it need not have alt text. The alt attribute however is required on every image. If there is no information to be shared, it may be left blank, alt="". If an image has information like a "Pie chart" you would wish to offer the same info as an alt attribute. You would textually show the same info, you can decide if the fact that the image is a pie chart is of importance or not. If not, then simply add the % shown. alt="Jueau: Rainfall 70%, Cloudy 20%, Sunshine 10%". You would not describe the image as in alt="3D pie chart using the colors red, yellow and green. Green being sunny days, red rain and yellow cloudy..." Do not use alt text for decorative images. Common is alt="bottom right corner". Although correct, this has no informative value as it pertains only to the look of the site for visual users. In these cases having a screen reader notify the user during the flow of the information that it has reached an image representing the bottom right corner is of no importance and adds to the general "noise." By leaving the alt in place but empty, the screen reader will skip the image and the user will either not know an image is present or will understand that the image is of no real value and they are missing nothing. By default, the screen reader will read the name of the image if an alt text is not available. The user would hear "image snodgrass-sen-center.jpg." This of course has no value to them. By adding the alt attribute it will either ignore the image or read the alt text given. For the above image a correct alt attribute would be to describe the information in the image... not the image itself. In this case alt="Commissioner Snuffy Smith and Director Gomer Pile visit with seniors at the Snodgrass Senior Center on Wednesday, May 23, 2007.", no description of the surroundings or even in what position the officials are standing in is given as it is of no value for the visually impaired. Again the same image, if the image does however have a caption, in this case you would not want a caption and an alt text as this would result in the screen reader reading both and the information is doubled. You do not want the alt alone as the visual user will not have access to it. However the caption, due to it's positioning would be clear enough to a screen reader user that the two belong together. So in the case of captions, as there are no HTML elements to deal with captions, it is justified to leave the alt attribute blank as the caption text already describes the information of the image and you would leave the left and right specifications in place for the visual users to identify which person fits which name and title. So in closing, it is imperative that all images regardless are given a alt attribute, alt text should only be used if the image portraits important information. If the image is purely decorative the alt attribute is left empty and in the case of images with captions the alt attribute should be left empty. In her article "Reviving Anorexic Web Writing" Amber Simmons makes a very good point about how alt text can make even decorative images more interesting and give an emotional alternative meaning to the vision impaired. The "longdesc" is the big brother of the alt attribute. It stands for "Long description." The specs do not limit the length of the alt attribute. Usually the alt attribute is kept fairly short. Longdesc in unlimited, rule of thumb is that it would be more sentences. The issue here is the opinion of many in the community that if an image is of such importance and complexity to need a long description, then the content deserves a page itself or a description directly in the content of the original page with the image as a visual aid to the textual information. For years longdesc was not widely supported by user agents, I have heard comments suggesting it is still not well supported and from others that it is widely supported now. The longdesc is added as an attribute with the alt attribute and links to a separate file with the description. I discovered a interesting use for the "Longdesc" attribute in the Section508.gov FAQ : [Edited May 2008]