I'm working on a web page where a user will be allowed to add or edit a feedback for a place. If the person already gave the place a feedback, he/she will be shown an Edit Review button otherwise, the user will be shown an Add Review button.
In my feedback table in my database, I have a places_id and users_id column. Here's my query in PHP (Assuming that $id and $places_id have values):
<?php
$query5 = mysql_query("SELECT * FROM feedback WHERE user_id = '$id' AND places_id = '$places_id'");
$row5 = mysql_fetch_array($query5);
if($row5['user_id'] != $id){
?>
<button type="button" class="btn btn-default"><span class="glyphicon glyphicon-arrow-left"></span> Back</button>
<button class="btn btn-primary" type="submit" name="submit">Review</button>
<?php }else{ ?>
<button type="button" class="btn btn-default"><span class="glyphicon glyphicon-arrow-left"></span> Back</button>
<button class="btn btn-primary" type="submit" name="submit">Edit Review</button>
<?php } ?>
I was thinking that if the query did not return a result where the given user_id is not equal to the user_id in the result, it would let me do my if-else condition. However if there is a feedback for a current place, it displays the button found in the else statement.
What do you think is the problem and why is the if condition not working?
I also tried if(mysql_num_rows($query5)==0) but it's also not working.
I would always do:
<?php
$query5 = mysql_query("SELECT * FROM feedback WHERE user_id = '$id' AND places_id = '$places_id'");
if ($row5 = mysql_fetch_array($query5)) {
?>
<button type="button" class="btn btn-default"><span class="glyphicon glyphicon-arrow-left"></span> Back</button>
<button class="btn btn-primary" type="submit" name="submit">Edit Review</button>
<?php }else{ ?>
<button type="button" class="btn btn-default"><span class="glyphicon glyphicon-arrow-left"></span> Back</button>
<button class="btn btn-primary" type="submit" name="submit">Review</button>
<?php } ?>
Related
I am checking the time for which the doctor is appointed and if the doctor is appointed then we have to disable the Button for that specific time for 3 months. My condition is not satisfying the code and Foreach is not working properly
I have tried using eloquent but the code is not matching the condition
Controller
public function doctor(){
$data['page_title'] = 'Doctor';
$doctors = Doctor::all();
$data['doctors'] = WebDoctorDetails::all();
return view('frontend.doctor',['doctors'=>$doctors])-
>withData((object)$data);
}
HTML Code
<div>
<div class="main_div">
<div class="buttons">
#foreach($doctors as $doctor)
#if($doctor->transaction_id != NULL && $doctor->plan == "90" && $doctor->cabin == "Cabin 1" && $doctor->day =="Friday" && $doctor->time == "8.00 - 10.00")
<script>
$('#a').attr("disabled", true);
setTimeout(function() { enableSubmit('#a') }, 7776000);
</script>
<button type="button" class="btn btn-info btn-lg" data-toggle="modal" id="a" data-target="#myModal">8.00 - 10.00</button>
#else
<button type="button" class="btn btn-info btn-lg" data-toggle="modal" data-target="#myModal">8.00 - 10.00</button>
#endif
#endforeach
<button type="button" class="btn btn-info btn-lg" data-toggle="modal" data-target="#myModal1">10.30 - 12.30</button>
<button type="button" class="btn btn-info btn-lg" data-toggle="modal" data-target="#myModal2">1.00 - 3.00</button>
<button type="button" class="btn btn-info btn-lg" data-toggle="modal" data-target="#myModal3">3.30 - 5.30</button>
<button type="button" class="btn btn-info btn-lg" data-toggle="modal" data-target="#myModal4">6.00 - 8.00</button>
<button type="button" class="btn btn-info btn-lg" data-toggle="modal" data-target="#myModal5">8.30 - 10.30</button>
</div>
</div>
</div>
I want my output like this : https://ibb.co/5FNTVBf
But I am Getting This : https://ibb.co/MsTqSy4
just add disabled attribute to button if condition match
#php($found = false)
#foreach($doctors as $doctor)
#if($doctor->transaction_id != NULL && $doctor->plan == "90" && $doctor->cabin == "Cabin 1" && $doctor->day =="Friday" && $doctor->time == "8.00 - 10.00")
#php($found = true)
#endif
#endforeach
#if($found)
<button type="button" class="btn btn-info btn-lg matchButton" data-toggle="modal" data-target="#myModal" disabled>8.00 - 10.00</button>
#else
<button type="button" class="btn btn-info btn-lg" data-toggle="modal" data-target="#myModal">8.00 - 10.00</button>
#endif
then to enable it after 7776000 milliseconds ,
<script>
$(document).ready(function(){
setTimeout(function(){
$('.matchButton').removeAttr('disabled');
}, 7776000);
});
</script>
How I can echo the whole code below.. The problem is another echo inside of the button..
Thanks!
<button type="submit" id="addres" name="addres" <?php echo $addres_disabled;?> class="btn btn-primary btn-lg pull-right"><i class="fa fa-map-marker"></i> Send Addres</button>
Try this:
echo '<button type="submit" id="addres" name="addres" '.$addres_disabled.' class="btn btn-primary btn-lg pull-right"><i class="fa fa-map-marker"></i> Send Addres</button>';
This is way too small question. A bit google search would have helped you.
echo '<button type="submit" id="addres" name="addres" '.$addres_disabled.' class="btn btn-primary btn-lg pull-right"><i class="fa fa-map-marker"></i> Send Addres</button>';
Something like that:
<?php
$addres_disabled = 'disabled';
echo '<button type="submit" id="addres" name="addres" '.$addres_disabled.' class="btn btn-primary btn-lg pull-right">
<i class="fa fa-map-marker"></i> Send Addres</button>';
?>
You can use it outside the <?php?> as you are already using, something like:
<?php
/*** Your php code ***/
$addres_disabled = 'disabled';
/*** Your php code ***/
?>
<button type="submit" id="addres" name="addres" <?=$addres_disabled?> class="btn btn-primary btn-lg pull-right">
<i class="fa fa-map-marker"></i> Send Addres</button>';
<?php
/*** Your rest php code ***/
?>
Close PHP tag, before starting your HTML, and after HTML, you can continue the PHP tags, depends on your rest code.
i think you can juste do :
<?php echo '<button type="submit" id="addres" name="addres" '. $addres_disabled .' class="btn btn-primary btn-lg pull-right">
<i class="fa fa-map-marker"></i> Send Addres</button>' ?>
I have a form which goes through three steps. In step 2, I am asking the user to select a speciality by clicking the corresponding button. If they click a button, they should move to the 3rd and final step.
Here is the button code:
<button class="btn btn-primary nextBtn btn-proffessional "
type="button" name="hair_stylist" >HAIR STYLIST</button>
<button class="btn btn-primary nextBtn btn-proffessional "
type="button" name="cosmetologist" >COSMETOLOGIST</button>
<button class="btn btn-primary nextBtn btn-proffessional "
type="button" name="makeup_artist" >MAKEUP ARTIST</button>
<button class="btn btn-primary nextBtn btn-proffessional "
type="button" name="barber" >BARBER</button>
<button class="btn btn-primary nextBtn btn-proffessional "
type="button" name="esthetician" >ESTHETICIAN</button>
<button class="btn btn-primary nextBtn btn-proffessional "
type="button" name="nail_technitian" >NAIL TECHNITIAN</button>
I don't think name will work here. Is there anything that can be done with data-*? How can I send and grab this value in PHP when the form is submitted?
Having a name is fine and necessary.
There are two problems.
You need actually have a value in order to send a value
You need the button to be a submit button in order to submit the form
Such:
<button
class="btn btn-primary nextBtn btn-proffessional"
type="submit"
name="profession"
value="hair_stylist">
Hair Stylist
</button>
Then in PHP you can simply:
do_something_with($_POST["profession"]);
You can also use jquery Post function for this.
First little bit change your html code. Put your values inside id of your buttons
<button class="btn btn-primary nextBtn btn-proffessional "
type="button" name="hair_stylist" id="HAIR STYLIST">HAIR STYLIST</button>
<button class="btn btn-primary nextBtn btn-proffessional "
type="button" name="cosmetologist" id="COSMETOLOGIST">COSMETOLOGIST</button>
<button class="btn btn-primary nextBtn btn-proffessional "
type="button" name="makeup_artist" id="MAKEUP ARTIST">MAKEUP ARTIST</button>
<button class="btn btn-primary nextBtn btn-proffessional "
type="button" name="barber" id="BARBER" >BARBER</button>
<button class="btn btn-primary nextBtn btn-proffessional "
type="button" name="esthetician" id="ESTHETICIAN" >ESTHETICIAN</button>
<button class="btn btn-primary nextBtn btn-proffessional "
type="button" name="nail_technitian" id="NAIL TECHNITIAN" >NAIL TECHNITIAN</button>
Then Some jquery code here:
$(document).ready(function () {
$('.nextBtn').on('click', function () {
$.post("NewPage.php",
{value: this.id
});
});
});
After clicking button. That particular button will be accessed by its class then it sends data to NewPage.php (You have to make new php page) where you can access value by POST array.
NewPage.php
If(isset($_POST['value']))
{
//Do your process here
}
Use the value parm.
Example:
<button class="btn btn-primary nextBtn btn-proffessional " type="button" name="hair_stylist" value="HAIR STYLIST">HAIR STYLIST</button>
I have the following code=>
<button class="btn btn-lg btn-warning text-center but-width" id="first" name="geri" type="submit" value="<?php ?>">BACK</button>
<button class="btn btn-lg btn-warning text-center but-width" id="second" name="ileri" type="submit" value="<?php ?>">FORWARD</button>
These buttons submit the form to the same page. At the top of the page I have variable $t which is initialized at value '0' and is followed by the codes=>
$t=0;
if( $this->input->post('ileri') ) { $t=$t+1;} // Back button was pressed;
if( $this->input->post('geri') ) { $t=$t-1;} // Forward button was pressed;
Now as I press forward I want to increase $t and when I press back I want to decrease it. But because of the declaration at the top ($t=0;) it goes as far as '1' with 'forward' and as back as '0' with 'back' buttons. Can anyone think of a way of getting over this problem.
Thank you...
Add a hidden input, and store $t there. This gets posted upon submit:
<?php
$t = $this->input->post('t');
if (!$t) $t = 0;
if( $this->input->post('ileri') ) { $t=$t+1;} // Back button was pressed;
if( $this->input->post('geri') ) { $t=$t-1;} // Forward button was pressed;
?>
<input name="t" type="hidden" value="<?=$t ?>">
<button class="btn btn-lg btn-warning text-center but-width" id="first" name="geri" type="submit" value="submit">BACK</button>
<button class="btn btn-lg btn-warning text-center but-width" id="second" name="ileri" type="submit" value="submit">FORWARD</button>
You could use url parameter. Get instead of post. so that it stores the current value of variable $t i.e.
if (isset($_GET['t']))
{
$t = $_GET['t'];
}
else
{
$t = 0;
}
Something like that could be of some help
If you want to know what button makes the submit you need to change the buttons
<button class="btn btn-lg btn-warning text-center but-width" id="first" name="geri" type="submit" value="<?php ?>">BACK</button>
<button class="btn btn-lg btn-warning text-center but-width" id="second" name="ileri" type="submit" value="<?php ?>">FORWARD</button>
to
<button class="btn btn-lg btn-warning text-center but-width" id="first" name="s_button" type="submit" value="geri">BACK</button>
<button class="btn btn-lg btn-warning text-center but-width" id="second" name="s_button" type="submit" value="ileri">FORWARD</button>
in your controller
$button_s = $this->input->post('s_button');
if( isset($button_s)){
switch($button_s){
case 'geri':
//do somthing
break;
case 'ileri':
//do somthing
break;
}
}
I have a counter which adds number of rows to a table based on what the counter is. I have one button that increase the counter every time its clicked, but it only works one time.
php:
if (isset($_REQUEST['Addmore'])) {
$NoOfUsers++;
<form action="addstudent.php">
<th>
<button type="submit" class="btn btn-default btn-sm spoiler-trigger pull-right" aria-label="Left Align" name="Addmore" title="Add Row">
<span class="glyphicon glyphicon-thumbs-up" aria-hidden="true"> </span>
</button>
</th>
</form>
php
<?php
session_start();
if (isset($_REQUEST['Addmore'])) {
?><button class="btn btn-default"><?php
echo $_SESSION['NoOfUsers'] ? ++$_SESSION['NoOfUsers'] : $_SESSION['NoOfUsers']=1;
?></button><?php
}
or JavaScript
<button id="counter" class="btn btn-default">0</button>
<script>
$('#counter').on('click',function(){$( this ).html(1 * $( this ).html() + 1)});
</script>