Is question mark really need when select all row in prepared statement?
I wonder if I still need question mark if I don't want to specify any row. Because bind_param
needs it.
$zr="0";
$stmt=$mysqli->prepare("select * from products_db where not prd_id=?");
$stmt->bind_param("i",$zr);//can I skip this line or what?
I search everywhere but there's no such a thing. Once I tried without ?
it errors without reason. I might be typo error, something?
php mysqli prepared-statement
add a comment |
I wonder if I still need question mark if I don't want to specify any row. Because bind_param
needs it.
$zr="0";
$stmt=$mysqli->prepare("select * from products_db where not prd_id=?");
$stmt->bind_param("i",$zr);//can I skip this line or what?
I search everywhere but there's no such a thing. Once I tried without ?
it errors without reason. I might be typo error, something?
php mysqli prepared-statement
2
FYI, no program ever "errors without reason". If you can't see the errors, it just means your environment is not configured to show them. See How to get useful error messages in PHP? and How to get MySQLi error information in different environments
– Phil
Nov 27 '18 at 5:27
add a comment |
I wonder if I still need question mark if I don't want to specify any row. Because bind_param
needs it.
$zr="0";
$stmt=$mysqli->prepare("select * from products_db where not prd_id=?");
$stmt->bind_param("i",$zr);//can I skip this line or what?
I search everywhere but there's no such a thing. Once I tried without ?
it errors without reason. I might be typo error, something?
php mysqli prepared-statement
I wonder if I still need question mark if I don't want to specify any row. Because bind_param
needs it.
$zr="0";
$stmt=$mysqli->prepare("select * from products_db where not prd_id=?");
$stmt->bind_param("i",$zr);//can I skip this line or what?
I search everywhere but there's no such a thing. Once I tried without ?
it errors without reason. I might be typo error, something?
php mysqli prepared-statement
php mysqli prepared-statement
edited Nov 27 '18 at 5:25
Phil
97.8k11141161
97.8k11141161
asked Nov 27 '18 at 4:59
WilfWilf
1,25112357
1,25112357
2
FYI, no program ever "errors without reason". If you can't see the errors, it just means your environment is not configured to show them. See How to get useful error messages in PHP? and How to get MySQLi error information in different environments
– Phil
Nov 27 '18 at 5:27
add a comment |
2
FYI, no program ever "errors without reason". If you can't see the errors, it just means your environment is not configured to show them. See How to get useful error messages in PHP? and How to get MySQLi error information in different environments
– Phil
Nov 27 '18 at 5:27
2
2
FYI, no program ever "errors without reason". If you can't see the errors, it just means your environment is not configured to show them. See How to get useful error messages in PHP? and How to get MySQLi error information in different environments
– Phil
Nov 27 '18 at 5:27
FYI, no program ever "errors without reason". If you can't see the errors, it just means your environment is not configured to show them. See How to get useful error messages in PHP? and How to get MySQLi error information in different environments
– Phil
Nov 27 '18 at 5:27
add a comment |
1 Answer
1
active
oldest
votes
If you don't need to bind any parameters, you can use mysqli::query()
$result = $mysqli->query('SELECT * FROM products_db');
This both prepares and executes the SQL provided but offers no way to safely bind parameters.
This is roughly equivalent to...
$stmt = $mysqli->prepare('SELECT * FROM products_db');
$result = $stmt->execute();
which you can also use.
Note there are no positional parameters (ie ?
) and therefore, no need to use mysqli_stmt::bind_param()
.
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53493014%2fis-question-mark-really-need-when-select-all-row-in-prepared-statement%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
If you don't need to bind any parameters, you can use mysqli::query()
$result = $mysqli->query('SELECT * FROM products_db');
This both prepares and executes the SQL provided but offers no way to safely bind parameters.
This is roughly equivalent to...
$stmt = $mysqli->prepare('SELECT * FROM products_db');
$result = $stmt->execute();
which you can also use.
Note there are no positional parameters (ie ?
) and therefore, no need to use mysqli_stmt::bind_param()
.
add a comment |
If you don't need to bind any parameters, you can use mysqli::query()
$result = $mysqli->query('SELECT * FROM products_db');
This both prepares and executes the SQL provided but offers no way to safely bind parameters.
This is roughly equivalent to...
$stmt = $mysqli->prepare('SELECT * FROM products_db');
$result = $stmt->execute();
which you can also use.
Note there are no positional parameters (ie ?
) and therefore, no need to use mysqli_stmt::bind_param()
.
add a comment |
If you don't need to bind any parameters, you can use mysqli::query()
$result = $mysqli->query('SELECT * FROM products_db');
This both prepares and executes the SQL provided but offers no way to safely bind parameters.
This is roughly equivalent to...
$stmt = $mysqli->prepare('SELECT * FROM products_db');
$result = $stmt->execute();
which you can also use.
Note there are no positional parameters (ie ?
) and therefore, no need to use mysqli_stmt::bind_param()
.
If you don't need to bind any parameters, you can use mysqli::query()
$result = $mysqli->query('SELECT * FROM products_db');
This both prepares and executes the SQL provided but offers no way to safely bind parameters.
This is roughly equivalent to...
$stmt = $mysqli->prepare('SELECT * FROM products_db');
$result = $stmt->execute();
which you can also use.
Note there are no positional parameters (ie ?
) and therefore, no need to use mysqli_stmt::bind_param()
.
edited Nov 27 '18 at 5:26
answered Nov 27 '18 at 5:19
PhilPhil
97.8k11141161
97.8k11141161
add a comment |
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53493014%2fis-question-mark-really-need-when-select-all-row-in-prepared-statement%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
2
FYI, no program ever "errors without reason". If you can't see the errors, it just means your environment is not configured to show them. See How to get useful error messages in PHP? and How to get MySQLi error information in different environments
– Phil
Nov 27 '18 at 5:27