CodeLobster IDE
http://codelobster.com/forum/

questions about mysqli displaying variables
http://codelobster.com/forum/viewtopic.php?f=3&t=25236
Page 1 of 1

Author:  itsme [ Sat Apr 08, 2023 9:05 pm ]
Post subject:  questions about mysqli displaying variables

Quote:
My project seems simple, update a couple of database tables, one from a little form, print a receipt
and echo out the receipt# and other values. The updates work but the values echoed are wrong or
absent. Cmon brave souls, tell me what I'm doin rong.

Code:
<!DOCTYPE html><html>
<head>
     <title>record payment</title>
<html><head>
<script type="text/javascript">
var monthNames = [ "January","February","March","April","May","June","July",
                   "August","September","October","November","December"     ];
var today = new Date(); 
var date = monthNames[today.getMonth()] + " - " + today.getDate() + " - " + today.getFullYear();
</script>
</head>
<body><center>
Date:<script type="text/javascript">document.write(date);</script><p>
<img src="apt-pic.jpg" alt="apartment" height=100 width=300><p>
<?php
$link = mysqli_connect("localhost", "root", "", "homedb");
// Check connection
if($link === false){ die("ERROR: Could not connect. " . mysqli_connect_error()); }

$unit=$_POST['unit'];
$amtpaid=$_POST['amtpaid'];
$paidday=$_POST['paidday'];
$id = '';

$amtpaid = 0;
$amtdue =  0;
$dueday = '';

$prevbal =  0;
$latechg =  0;

$secdep =  0;
$damage =  0;
$courtcost =  0;
$nsf =  0;
$paidday = '';

$bizname = '';
$bizstreet = '';
$bizcity = '';
$bizzip = '';
$bizemail = '';
$receiptno = 0;
$owed = $amtdue - $amtpaid;
$due= '';
/* Perform a query, check for error */
$sql = "UPDATE crttbl SET
receiptno = receiptno + 1 where id=1";

echo "receipt# $receiptno";  // line 50

if(mysqli_query($link, $sql)){ echo "receiptno updated"; }
else { echo "ERROR: Could not able to execute $sql. " . mysqli_error($link); }

$due = $amtdue + $prevbal + $latechg + $secdep + $damage + $courtcost + $nsf;

  /* if no pay or part pay, add $35 to latechg field and amount not paid to prevbal field */
    if ($amtpaid < $due) { $prevbal = $due - $amtpaid; $latechg = $latechg + 35.00;
$amtpaid = 0; $secdep = 0; $damage = 0;  $courtcost = 0;
$nsf = 0; $hudpay = 0; $comments = ' '; $paidday = ' ';   }
/* if amt paid = amt due,  */
    if ($amtpaid == $due) { $amtpaid = 0; $prevbal =  0; $latechg = 0;;
$secdep = 0; $damage = 0;  $courtcost = 0;
$nsf = 0; $hudpay = 0; $comments = ' '; $paidday = ' '; } 
/* if over-payment subtract over-payment from prevbal */
    if ($amtpaid > $due)  { $prevbal = $amtpaid - $due;
$amtpaid = 0; $latechg = 0; $secdep = 0; $damage = 0;  $courtcost = 0;
$nsf = 0; $hudpay = 0; $comments = ' '; $paidday = ' ';   }

/* Perform a query, check for error */
$sql = "UPDATE paytbl SET
$amtpaid = '$amtpaid', dueday = DATE_ADD(dueday, INTERVAL 1 MONTH), prevbal = '$prevbal',
latechg = '$latechg', paidday = '$paidday' WHERE unit = '$unit'";
if(mysqli_query($link, $sql)){ echo ""; }
else { echo "ERROR: Could not able to execute $sql. " . mysqli_error($link); }
?>

<?php echo $bizname;echo "<br />"; ?>  // line  78
<?php echo $bizstreet;echo "<br />"; ?> 
<?php echo $bizcity;echo "<br />"; ?> 
<?php echo $bizzip;echo "<br />"; ?><br> 
<?php echo $bizemail;echo "<br />"; ?>  // line 82 

For:<SELECT name="options">
<option value="#990033" style="background-color: Violet;">Rent payment</option>
<option value="#003300" style="background-color: Aquamarine;">Background Check</option>
<option value="#6600cc" style="background-color: Pink;">Security Deposit Payment</option>
<option value="#003300" style="background-color: Aquamarine;">Damages Payment</option>
<option value="#990033" style="background-color: Violet;">Late Charges Payment</option>
<option value="#003300" style="background-color: Aquamarine;">Court Costs Payment</option>
<option value="#6600cc" style="background-color: Pink;">NSF Payment</option>
<option value="#990033" style="background-color: Violet;"> </option>
</SELECT><p>

Tenant paying is: <?php echo $_POST["unit"]; ?> -
Amount paid is: <?php echo $_POST["amtpaid"]; ?> -

Balance due is:<?php echo $owed; ?><br>  // line 98
<b><input type="text" size="35" maxlength="35" name=frm.Name" value="sign" STYLE="color: #000000; font-weight: bold; background-color: #ffccff;" onFocus="this.value=''"><br>
<h3>We Thank You</h3>
</center></body></html>
<?php
// Close connection
mysqli_close($link);
?>

Quote:
apartment
receipt# 0receiptno updatedERROR: Could not able to execute UPDATE paytbl SET 0 = '0',
dueday = DATE_ADD(dueday, INTERVAL 1 MONTH), prevbal = '0', latechg = '0', paidday = ' '
WHERE unit = 'unit1'. You have an error in your SQL syntax; check the manual that corresponds
to your MariaDB server version for the right syntax to use near '0 = '0', dueday = DATE_ADD(dueday,
INTERVAL 1 MONTH), prevbal = '0', latech...' at line 2
// line 78

// line 82 For: Tenant paying is: unit1 - Amount paid is: 530.00 - Balance due is:0
// line 98

Author:  itsme [ Tue Apr 11, 2023 9:34 pm ]
Post subject:  Re: questions about mysqli displaying variables

Quote:
I coded my first php program, set up my first database and designed my first website with help from
this site years ago. Recently I have solicited help and received 5 reads and 3r erroneous/useless
replies. Please delete my posts.

Author:  Admin [ Tue May 02, 2023 8:50 am ]
Post subject:  Re: questions about mysqli displaying variables

Hi.

You have extra $ sign.
Here is the correct line:

Code:
amtpaid = '$amtpaid', dueday = DATE_ADD(dueday, INTERVAL 1 MONTH), prevbal = '$prevbal',


Regards,
Codelobster Team.

Page 1 of 1 All times are UTC
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/